我想实现多行textview保持固定布局。 这是预期的输出屏幕
这是输出我得到。
<LinearLayout
android:id="@+id/layout_product_desc"
android:layout_width="0dp"
android:layout_weight="0.75"
android:layout_height="match_parent"
android:padding="4dp"
android:gravity="center"
android:weightSum="1"
android:orientation="vertical">
<LinearLayout
android:layout_weight="0.90"
android:layout_width="match_parent"
android:layout_height="0dp"
android:orientation="vertical"
android:weightSum="1">
<TextView
android:id="@+id/txt_product_title"
style="@style/Appio.Text.Dark.Normal"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_gravity="start"
android:layout_weight="0.40"
android:maxLines="2"/>
<TextView
android:id="@+id/txt_product_subtitle_or_model"
style="@style/Appio.Text.Dark.Small"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_gravity="start"
android:layout_weight="0.20"
android:maxLines="1"/>
<TextView
android:id="@+id/txt_product_short_description"
style="@style/Appio.Text.Dark.Small"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_gravity="start"
android:layout_weight="0.20"
android:maxLines="1"/>
<TextView
android:id="@+id/txt_product_availability"
style="@style/Appio.Text.Dark.Small"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_gravity="start"
android:layout_weight="0.20"
android:maxLines="1"/>
</LinearLayout>
<TextView
android:id="@+id/txt_product_cost"
style="@style/Appio.Text.Primary.Normal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="start"
android:layout_weight="0.10"
android:maxLines="1"/>
</LinearLayout>
即使我设置了maxLine并指定了权重属性,布局也不会保持固定。还有一些&#34; 缺货&#34;如图2所示。如何解决此问题?
答案 0 :(得分:0)
如果要使用权重,请将txt_product_cost
高度替换为0dp。
<TextView
android:id="@+id/txt_product_cost"
style="@style/Appio.Text.Primary.Normal"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_gravity="start"
android:layout_weight="0.10"
android:maxLines="1"/>
那应该解决你的问题
答案 1 :(得分:0)
你应该尝试删除第一个LinearLayout中的TextViwes的 android:layout_weight =&#34; 0.20&#34; ,并将 android:layout_height 更改为 WRAP_CONTENT
答案 2 :(得分:0)
你不能在这里依赖layout_weight。将layout_height设置为&#34; wrap_content&#34;