0

我是安卓新手。

我有一个必须像这样查看的列表:PIC NAME DESC

我有一个包含上述所有 3 个信息的存储桶列表。问题是,我只能让一个字段出现在视图中。在这种情况下,bucket.getBucketName()。

protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        List<Bucket> buckets = BucketHandler.getBucketList();
        List<String> bucketList = new ArrayList<String>();
        for (Bucket bucket : buckets){
            bucketList.add(bucket.getBucketName());
        }
        setListAdapter(new ArrayAdapter<String>(this, R.layout.row,
                R.id.bucket_list, bucketList));
    }

我的 .xml 如下:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">    

    <ListView
        android:id="@id/android:list"
        android:layout_width="fill_parent"
        android:layout_height="0dip"
        android:layout_weight="1"
        android:drawSelectorOnTop="false"/>

    <TextView
        android:id="@id/android:empty"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:text="@string/noData"/>


</LinearLayout>

行布局:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal" 
    android:background="@color/lightgray">

    <ImageView
        android:id="@+id/icon"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:contentDescription="@string/none"
        android:src="@drawable/ic_launcher" />

    <TextView
        android:id="@+id/bucket_list"
        android:layout_width="210dp"
        android:layout_height="wrap_content"
        android:layout_marginLeft="15dp"
        android:layout_marginTop="15dp"/>

    <TextView
        android:id="@+id/bucket_percentage"
        android:layout_marginTop="15dp"
        android:layout_width="40dp"
        android:layout_height="wrap_content"
        android:layout_marginRight="10dp"
    />

    <TextView
        android:id="@id/android:hidden_id"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:visibility="gone"
    />

</LinearLayout>

如何在项目列表中呈现所有三个字段?谢谢你。

4

1 回答 1

1

通过扩展 ArrayAdapter 并覆盖 getView() 方法创建自己的自定义适配器

于 2012-12-23T18:29:20.470 回答