我有一个 ListView ,每个项目呈现如下
<?xml version="1.0" encoding="utf-8"?>
<!-- Single List Item Design -->
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="?android:attr/listPreferredItemHeight"
android:padding="6dip">
<ImageView
android:id="@+id/projectImage"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_marginRight="6dip"
android:src="@drawable/project_icon"
android:contentDescription = "@string/projectIcon" />
<LinearLayout
android:id="@+id/projectDetails"
android:orientation="vertical"
android:layout_width="0dip"
android:layout_weight="1"
android:layout_height="0dip">
<TextView
android:id="@+id/topText"
android:layout_width="fill_parent"
android:layout_height="0dip"
android:padding="10dip"
android:textSize="16sp"
android:textStyle="bold"
android:textColor="@color/text_color"
android:gravity="center_vertical" />
<TextView
android:id="@+id/bottomText"
android:layout_width="fill_parent"
android:layout_height="0dip"
android:paddingLeft="10dip"
android:textSize="14sp"
android:singleLine="true"
android:textColor="@color/locationText_color"
android:ellipsize="marquee" />
</LinearLayout>
</LinearLayout>
但是我的 ListView 没有正确呈现列表项太短并且没有显示任何内容见下文
我确实使用自定义样式。我也试过改变
android:layout_height="?android:attr/listPreferredItemHeight"
到
android:layout_height="100dip"
但是没用。
谁能帮忙吗
最佳答案
首先,正如我在我的评论中所说,当您膨胀行布局文件时,您应该始终使用此版本的 inflate()
方法,以便设置正确的 LayoutParams
对于行 View :
inflater.inflate(R.layout.row_layout, parent, false)
关于两个 TextViews
没有出现,我不确定您希望它们放置在什么位置。这是我的想法:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="?android:attr/listPreferredItemHeight"
android:padding="6dip">
<ImageView
android:id="@+id/projectImage"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_marginRight="6dip"
android:src="@drawable/project_icon"
android:contentDescription = "@string/projectIcon" />
<LinearLayout
android:id="@+id/projectDetails"
android:orientation="vertical"
android:layout_width="0dip"
android:layout_weight="1"
android:layout_height="fill_parent">
<TextView
android:id="@+id/topText"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="10dip"
android:textSize="16sp"
android:textStyle="bold"
android:textColor="@color/text_color"
android:gravity="center_vertical" />
<TextView
android:id="@+id/bottomText"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:paddingLeft="10dip"
android:textSize="14sp"
android:singleLine="true"
android:textColor="@color/locationText_color"
android:ellipsize="marquee" />
</LinearLayout>
</LinearLayout>
关于Android 布局问题 - ListView 项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14399854/