列表视图与图像和两个项目?

时间:2012-04-14 10:27:35

标签: android listview add

您好我想在列表视图中显示两个项目。我知道我们可以使用以下内容执行此操作。 ArrayList<Map<String, String>>但我需要显示一个图像以及这两个项目 这是我想要的图像。

enter image description here

我使用一个imageview和两个文本视图创建xml文件。我不明白如何执行此操作。

6 个答案:

答案 0 :(得分:2)

您应该实施课程ArrayAdapter并创建自己的ListAdapter

请参阅:http://www.vogella.com/articles/AndroidListView/article.html

答案 1 :(得分:1)

您需要使用单元格设计创建布局文件。在适配器中,然后从编程中以编程方式调用当前布局膨胀方法,并填充字段并将其返回。

答案 2 :(得分:1)

以下是此类列表的实现:Contact-Picture-Sync

答案 3 :(得分:1)

对我来说,这样做的方法是使用BaseAdapter。您需要在活动上有列表视图,项目布局需要一个xml,然后在listview上调用带适配器的setAdapter()。

您可以在此处找到一些信息: Lazy Load images on Listview in android(Beginner Level)?

答案 4 :(得分:1)

所有你应该使用具有自己的对象的ArrayList,如

Class MyListeItem {

    String text1;
    String text2;
    String image;
}

List<MyListItem> = new ArrayList<MyListItem>();

然后创建一个扩展BaseAdapter的类来保存列表。 创建一个xml文件即。 res / layouts文件夹中的“my_listitem”和BaseAdapter的getView()方法执行类似

的操作
LinearLayout layout =  (LinearLayout)View.inflate(context, R.layout.my_listitem, null);

答案 5 :(得分:0)

这是一个list item xml布局文件,可以与simplest attributes

一起使用
<?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="wrap_content"
    android:gravity="center_vertical"
    android:minHeight="?android:attr/listPreferredItemHeight"
    android:orientation="horizontal"
    android:padding="16dp">

    <ImageView
        android:id="@+id/list_item_icon"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/ic_launcher"/>

    <LinearLayout
        android:layout_height="wrap_content"
        android:layout_width="0dp"
        android:layout_weight="1"
        android:orientation="vertical"
        android:paddingLeft="16dp">

        <TextView
            android:id="@+id/list_item_date_textview"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Tomorrow"/>

        <TextView
            android:id="@+id/list_item_forecast_textview"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Clear"/>

    </LinearLayout>

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="vertical">

        <TextView
            android:id="@+id/list_item_high_textview"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="25°"/>

        <TextView
            android:id="@+id/list_item_low_textview"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="6°"/>
    </LinearLayout>

</LinearLayout>

这将是这样的

enter image description here

can remove最后一个嵌套LinearLayout符合您的要求

以下是invisible boundaries enter image description here