SimpleAdapter添加了元素后没有内容显示

布局文件

<?xml version="1.0" encoding="UTF-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

    android:orientation="horizontal"

    android:layout_width="fill_parent"

    android:layout_height="fill_parent" >

     

    <!-- 定义一个List -->

    <ListView

        android:id="@+id/mylist"

        android:layout_width="fill_parent"

        android:layout_height="fill_parent" />

    <!-- 定义ImageView作为List的一部分 -->

    <ImageView

        android:id="@+id/header"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:paddingLeft="2dp" />

    <!-- 定义TextView作为List的一部分 -->

    <TextView 

        android:id="@+id/name"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:textSize="16dp"

        android:gravity="center_vertical"

        android:paddingLeft="10dp" />         

</LinearLayout>

 

 

设置主布局

    super.onCreate(savedInstanceState);

        setContentView(R.layout.simpleadapter_listview_main);

 

在创建SimpleAdapter 时,item要有自己的layout

SimpleAdapter simpleAdapter = new SimpleAdapter(this, 

                listItems, 

                R.layout.listview_main, 

                new String[] {"header", "personName"}, 

                new int[] {R.id.header, R.id.name});

imageview和textview不是写在主layout里,而是写在自己的item layout中,所以上面的布局文件应该写两个

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,如果您想要使用 SimpleAdapter 适配器来显示数据,可以参考以下示例代码: ``` // 定义一个存储数据的 List,每个元素是一个 Map,代表一条数据记录 List<Map<String, Object>> dataList = new ArrayList<>(); Map<String, Object> data1 = new HashMap<>(); data1.put("title", "数据1"); data1.put("content", "这是数据1的内容"); dataList.add(data1); Map<String, Object> data2 = new HashMap<>(); data2.put("title", "数据2"); data2.put("content", "这是数据2的内容"); dataList.add(data2); Map<String, Object> data3 = new HashMap<>(); data3.put("title", "数据3"); data3.put("content", "这是数据3的内容"); dataList.add(data3); // 定义 SimpleAdapter 显示数据 SimpleAdapter adapter = new SimpleAdapter( this, dataList, android.R.layout.simple_list_item_2, // 使用系统自带的布局,每项有两个 TextView 显示数据 new String[]{"title", "content"}, // 数据项中的 key 对应布局中的 TextView id new int[]{android.R.id.text1, android.R.id.text2} ); // 获取 GridView 控件 GridView gridView = findViewById(R.id.grid_view); // 设置适配器 gridView.setAdapter(adapter); ``` 在这个示例中,我们首先定义了一个 List,每个元素是一个 Map,代表一条数据记录。然后我们创建了一个 SimpleAdapter 适配器,将 List 中的数据显示在 GridView 中。 请注意,SimpleAdapter 的构造函数需要传入四个参数: - Context 对象,通常传入当前 Activity 实例。 - 数据源 List,每个元素是一个 Map,代表一条数据记录。 - 布局文件的 id,这里使用系统自带的简单布局 `android.R.layout.simple_list_item_2`,每项有两个 TextView 显示数据。 - 一个 String 数组,表示每个数据项中要显示内容的 key。 - 一个 int 数组,表示要显示数据的 TextView 的 id。 希望这个示例能够帮助到您!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值