【发布时间】:2015-12-03 06:15:12
【问题描述】:
这就是我想要实现的目标:
但是,我不知道如何让左侧视图至少增长到最小高度,但也可以作为右侧视图。这是我将高度设置为“match_parent”和“minHeight”时得到的结果:
正如您在第一个项目中看到的那样,图像视图被裁剪。当我使用“wrap_content”时,所有内容都从左右视图中显示,但我无法获得我想要的设计(图表放在底部,图像之间有空白):
我错过了什么?这是用于列表项的 XML 布局:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<LinearLayout
android:id="@+id/list_item_main"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:padding="4dp">
<LinearLayout
android:id="@+id/list_item_left_layout"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:minHeight="98dp"
android:orientation="vertical">
<ImageView
android:id="@+id/avatar"
android:layout_width="40dp"
android:layout_height="40dp"
android:src="@drawable/avatar"/>
<LinearLayout
android:id="@+id/list_item_overlay_layout"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_weight="1"
android:gravity="bottom"
android:orientation="vertical">
<ImageView
android:id="@+id/chart"
android:layout_width="40dp"
android:layout_height="58dp"
android:src="@drawable/chart"/>
</LinearLayout>
</LinearLayout>
<TextView
android:id="@+id/item_text"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:maxLines="8"
android:paddingLeft="8dp"
android:paddingRight="8dp"/>
</LinearLayout>
</LinearLayout>
【问题讨论】:
-
为了在
LinearLayout中添加“空白空间”,我建议添加一个简单的“空白”View-object 以及所需的间距属性。否则,您可以尝试使用新的 PercentRelativeLayout(如果您想具有特定宽度)或RelativeLayout来提高性能并避免嵌套布局。