Android布局文件设置TableLayout某一列宽度为屏幕宽度的30%

最好能在TableLayout标签里设置,行数有点多,在TableRow或者控件里弄太麻烦。我的意思是某一列占30%,其他列占剩下的70%... 最好能在TableLayout标签里设置,行数有点多,在TableRow或者控件里弄太麻烦。
我的意思是某一列占30%,其他列占剩下的70%
展开
 我来答
piaoyu3366
2014-09-12 · TA获得超过764个赞
知道小有建树答主
回答量:268
采纳率:0%
帮助的人:321万
展开全部

我给你一个思路吧:


<TableLayout  

    android:width = 0dp;


    android:weight = 7; />

<LinearLayout 

    android:width = 0dp;


    android:weight = 3;/>


这样就会有一个tablelayout 和一个 LinearLayout,tablelayout宽度占总宽度的30%,线性布局占70%

权重做的,具体代码这样:

<TableLayout

        android:layout_width="match_parent"

        android:layout_height="match_parent"

        android:orientation="horizontal" >


        <TableRow

            android:layout_width="0dp"

            android:layout_height="match_parent"

            android:layout_weight="1"

            android:background="@android:color/holo_orange_light" >

        </TableRow>


        <TableRow

            android:layout_width="0dp"

            android:layout_height="match_parent"

            android:layout_weight="1"

            android:background="@android:color/background_light" >

        </TableRow>


        <TableRow

            android:layout_width="0dp"

            android:layout_height="match_parent"

            android:layout_weight="3"

            android:background="@android:color/darker_gray" >

        </TableRow>


        <TableRow

            android:layout_width="0dp"

            android:layout_height="match_parent"

            android:layout_weight="1"

            android:background="@android:color/holo_blue_bright" >

        </TableRow>


        <TableRow

            android:layout_width="0dp"

            android:layout_height="match_parent"

            android:layout_weight="1"

            android:background="@android:color/holo_green_dark" >

        </TableRow>


        <TableRow

            android:layout_width="0dp"

            android:layout_height="match_parent"

            android:layout_weight="1"

            android:background="@android:color/holo_orange_dark" >

        </TableRow>


        <TableRow

            android:layout_width="0dp"

            android:layout_height="match_parent"

            android:layout_weight="1"

            android:background="@android:color/holo_purple" >

        </TableRow>


        <TableRow

            android:layout_width="0dp"

            android:layout_height="match_parent"

            android:layout_weight="1"

            android:background="@android:color/holo_red_dark" >

        </TableRow>

    </TableLayout>

实现的效果就是:

百度网友199986c
2015-07-14 · TA获得超过114个赞
知道小有建树答主
回答量:157
采纳率:0%
帮助的人:83.7万
展开全部
Android布局中没有用比例来设置控件宽度和高度的属性。
不过在TableLayout中可以使用layout_weight属性来控制控件所占屏幕的宽度。
比如有两个控件A和B水平排列,将它们的layout_weight属性分别设为3和7,那么这两个控件就会填满父控件,A占父控件宽度的3/10, B占父控件的7/10。如果有多个控件的话,可以通过计算layout_weight来确定每个控件所占比例。
值得注意的是,layout_weight属性只在LinearLayout和TableLayout中起作用。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式