如果直接继承ListAcitivty,则不需要自定义ListView,下面的是列表项单项显示格式
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal" >
<ImageView
android:id="@+id/img"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="3px"
/>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
>
<TextView
android:id="@+id/title"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textSize="16sp"
/>
<TextView
android:id="@+id/info"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textSize="10sp"
/>
</LinearLayout>
</LinearLayout>
Activity
package com.loulijun.demo13;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import android.app.ListActivity;
import android.os.Bundle;
import android.widget.SimpleAdapter;
public class Demo13Activity extends ListActivity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
SimpleAdapter adapter = new SimpleAdapter(this, getData(),
R.layout.main, new String[] { "img", "title", "info" },
new int[] { R.id.img, R.id.title, R.id.info });
setListAdapter(adapter);
}
private List<Map<String, Object>> getData() {
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
Map<String, Object> map = new HashMap<String, Object>();
map.put("img", R.drawable.e001);
map.put("title", "小宗");
map.put("info", "电台DJ");
list.add(map);
map = new HashMap<String, Object>();
map.put("img", R.drawable.e002);
map.put("title", "貂蝉");
map.put("info", "四大美女");
list.add(map);
map = new HashMap<String, Object>();
map.put("img", R.drawable.e04b);
map.put("title", "奶茶");
map.put("info", "清纯妹妹");
list.add(map);
map = new HashMap<String, Object>();
map.put("img", R.drawable.e04e);
map.put("title", "大黄");
map.put("info", "是小狗");
list.add(map);
map = new HashMap<String, Object>();
map.put("img", R.drawable.e11a);
map.put("title", "hello");
map.put("info", "every thing");
list.add(map);
map = new HashMap<String, Object>();
map.put("img", R.drawable.e11d);
map.put("title", "world");
map.put("coco
", "hello world");
list.add(map);
return list;
}
}
分享到:
相关推荐
首先,`SimpleAdapter` 是基于`BaseAdapter` 的一个简化版,它通过`Map` 对象和布局资源文件来填充列表项。通常,我们通过以下方式创建`SimpleAdapter`: ```java List, Object>> data = new ArrayList(); // 填充...
通过这个实例,开发者可以学习到如何在Android中使用SimpleAdapter来高效地绑定数据到ListView,并自定义列的显示。这在处理动态生成的列表或者需要展示多列数据的场景中非常有用。同时,理解并掌握ListView和...
- 实例化SimpleAdapter:在代码中,使用数据列表和布局资源创建SimpleAdapter实例。 - 设置适配器:将SimpleAdapter设置给GridView或ListView,完成数据绑定。 例如: ```java List, String>> data = new ...
总之,Android的`SimpleAdapter`是快速构建列表和网格视图的便捷工具,它简化了数据和视图之间的绑定,但在复杂需求下,可能需要自定义更复杂的Adapter以满足特定的功能需求。了解并熟练掌握`SimpleAdapter`的使用,...
本教程将聚焦于`SimpleAdapter`,它是Android提供的一种简单易用的适配器,特别适合新手入门学习。 `SimpleAdapter`是Android SDK内置的适配器之一,主要用于将数据集(通常是`List, ?>>`)转换为ListView的列表项...
综上所述,理解并熟练运用SimpleAdapter和自定义Adapter是Android开发中的重要技能。通过灵活运用这些知识,开发者可以创建出功能丰富、交互性强的列表视图,提升用户界面的体验。在实际项目中,可以根据具体需求...
Android系统提供了多种内置的适配器,如ArrayAdapter、SimpleAdapter等,但它们的功能可能无法完全满足复杂的界面设计。这时,我们需要创建自定义适配器,它可以灵活地绑定任意类型的数据,并控制视图的布局和行为。...
在Android开发中,`SimpleAdapter` 是一个非常实用的适配器类,它主要用于将数据绑定到像 `ListView` 这样的视图组件上。`ListView` 是Android中常用的一个控件,它允许用户显示一组长按需滚动的项目列表。`...
4. **SimpleAdapter构造函数**: 使用SimpleAdapter需要传入Context、数据集、布局资源ID、视图ID列表以及键值对列表。布局资源ID是定义Item样式的XML文件,视图ID列表对应布局中需要填充数据的视图,键值对列表则...
3. 初始化SimpleAdapter,传入上下文、数据集、布局资源ID以及键值对的映射键列表。 4. 将SimpleAdapter设置给ListView的Adapter属性。 示例代码: ```java List, Object>> dataList = new ArrayList(); // 添加...
// 使用实际的布局资源ID String[] from = {"key1", "key2"}; // 映射数据字段 int[] to = {R.id.text1_id, R.id.text2_id}; // 使用实际的TextView ID CustomSimpleAdapter adapter = new CustomSimpleAdapter...
综上所述,这个压缩包中的代码可能展示了如何使用`SimpleAdapter`创建一个简单的数据列表,并展示了如何将数据绑定到自定义布局的ListView中。学习并理解`SimpleAdapter`的用法对于安卓开发人员来说非常重要,因为它...
3. `int`:列表项布局资源ID,即我们之前创建的XML布局文件。 4. `String[]`:数据字段的键数组,对应于布局中的`View`。 5. `int[]`:布局中`View`的ID数组,这些`View`将被数据填充。 创建`SimpleAdapter`后,...
对于适配器加载自定义的xml布局文件,修改该Spinner样式较简单,就是在定义的xml布局文件中修改显示的样式就可以。但对于加载android自带的xml布局文件,有时会出现不是项目所需要的效果。主要问题有下拉几个: 1....
- `resource`:自定义布局资源ID,定义每个ListView项的视图结构 - `from`:Map中的键列表,对应自定义布局中的控件ID - `to`:自定义布局中控件的ID列表,对应`from`中的键 **2. 数据绑定** 在创建...
在Android中,最常见的Adapter实现有ArrayAdapter、SimpleAdapter和CursorAdapter,但有时这些内置的Adapter无法满足特定需求,这时就需要我们自定义Adapter。 自定义Adapter通常涉及以下几个步骤: 1. 创建一个...
在Android中,最常见的适配器有ArrayAdapter、SimpleAdapter等。为了自定义ListView的显示,我们需要创建一个继承自BaseAdapter的自定义适配器。在自定义适配器中,我们需要重写`getCount()`、`getItem()`、`...
本资源"安卓Android源码——(列表SimpleAdapter适配).rar"应该包含了一个示例项目,展示了如何使用 `SimpleAdapter` 实现数据的动态加载和显示。 首先,我们来看一下 `SimpleAdapter` 的基本用法。`SimpleAdapter` ...
`SimpleAdapter`通过数据模型(Map)和布局资源文件来构建每个ListView项,每个Map对象代表一个ListView项,键值对对应于布局文件中对应的控件ID和数据。 ### 使用`SimpleAdapter` 1. **创建数据集**:首先,你...
// 加载自定义布局 LayoutInflater inflater = getLayoutInflater(); View dialogView = inflater.inflate(R.layout.dialog_custom, null); // 获取GridView并设置适配器 GridView gridView = (GridView) ...