LinearLayout子权重无法正常工作

时间:2018-02-14 13:47:36

标签: android android-layout android-linearlayout android-layout-weight

我试图从平板电脑上的图片构建屏幕。 在内部片段中,我有一个带有项目的 RecyclerView 。每个项目都以 LinearLayout 为根。并且确实 8个孩子水平传播,体重1 (如下面的代码所示)。每行的第一个单元格是 TextView ,其他单元格是 CustomView (垂直LinearLayout,其中2 TextViews

docker logs -t -f {container_name}

鉴于此,行的子节点在宽度上传播不正确,如图中所示。我已尝试将<LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginBottom="5dp" android:layout_marginTop="5dp" android:orientation="horizontal" /> <TextView android:id="@+id/item_id" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_gravity="center_vertical" android:layout_margin="2dp" android:layout_weight="1" android:background="@drawable/item_border" android:drawableTop="@drawable/ic_id" android:fontFamily="@font/cabin_bold" android:gravity="center" android:padding="5dp" android:text="@string/mock" android:textColor="@android:color/black" android:textSize="17sp" /> <CustomView X 7 times android:id="@+id/item_attr1" android:layout_width="0dp" android:layout_height="match_parent" android:layout_margin="2dp" android:layout_weight="1" app:titleText="Mock" /> </LinearLayout> 属性用于行LinearLayout,但没有运气。我注意到,当该行的第一个子节点(TextView)有多个字符时,会出现此问题(特别是)。

这是片段的布局:

weightSum

赞赏任何想法

2 个答案:

答案 0 :(得分:1)

在TextView上:

<TextView 
    ...
    android:maxLines="1" 
    android:maxLength="8" 
    android:ellipsize="end"/>

这可以防止TextViews变得太大。您可以使用maxLength属性来查看更适合您的方案的内容。

答案 1 :(得分:0)

你的LinearLayout应该包含它现在自动关闭的其余代码。替换结束标记/&gt;使用&gt;

关闭自定义视图下方的LinearLayout