安卓开发_浅谈ListView(SimpleAdapter数组适配器)
2015-03-03 16:28
519 查看
安卓开发_浅谈ListView(ArrayAdapter数组适配器)
学习使用ListView组件和SimapleAdapter适配器实现一个带图标的ListView列表总共3部分
一、MainActivity.java文件
package xqx; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import com.example.test.R; import android.app.Activity; import android.content.res.TypedArray; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.view.ViewGroup; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.BaseAdapter; import android.widget.Gallery; import android.widget.ImageView; import android.widget.ListView; import android.widget.SimpleAdapter; import android.widget.Toast; public class MainActivity extends Activity{ private ListView listview; @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.mainactivity); //获取列表视图 listview = (ListView) findViewById(R.id.listView1); //定义并初始化保存图片ID的数组 int [] imageId = new int[]{R.drawable.menu_chapu,R.drawable.menu_chapu,R.drawable.menu_chapu,R.drawable.menu_chapu,R.drawable.menu_chapu}; //定义并初始化保存列表项文字的数组 String[] title = new String[]{"茶忌","茶具","茶疗","茶谱","更多"}; //创建list集合 List<Map<String,Object>> listItems = new ArrayList<Map<String,Object>>(); //通过for循环将图片id和列表项文字放到Map中,并添加到list集合中 for(int i=0;i<imageId.length;i++) { //实例化Map对象 Map<String,Object> map = new HashMap<String,Object>(); map.put("image", imageId[i]); map.put("title", title[i]); //将map对象添加到List集合 listItems.add(map); } //参数一context:上下文 //参数二data:数据源 ,一个Map组成的List集合 //参数三resource:列表项的布局文件 //参数四from:Map的键名 //参数五to:绑定数据视图中的id,与from成对应关系 SimpleAdapter adapter = new SimpleAdapter(this, listItems, R.layout.items, new String[]{"title","image"},new int[]{R.id.title,R.id.image}); listview.setAdapter(adapter); } }
二、两个 layout
(1)items.xml
<?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="match_parent" android:orientation="horizontal" > <ImageView android:id="@+id/image" android:paddingRight="10px" android:paddingTop="20px" //图片距离头部20px android:paddingBottom="20px" //图片距离底部20px android:adjustViewBounds="true" //
在ImageView 调整边界时保持图片的纵横比例,需要与maxWidth、MaxHeight一起使用,否则单独使用没有效果。 |
android:maxWidth="72px" android:maxHeight="72px" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:padding="10px" android:layout_gravity="center" android:id="@+id/title" /> </LinearLayout>
用于布局列表项内容,采用水平线性布局,并在该布局管理器中添加一个ImageView组件和一个TextView组件,分别用于显示列表项中的图标和文字
(2)mainactivity.xml
<?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="match_parent" android:orientation="vertical" > <ListView android:id="@+id/listView1" android:layout_width="match_parent" android:layout_height="wrap_content" > </ListView> </LinearLayout>
三、AndroidManifest.xml
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.test" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="18" /> <application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name="xqx.MainActivity"> - <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>
效果图
相关文章推荐
- 安卓开发_浅谈ListView(ArrayAdapter数组适配器)
- 安卓开发_浅谈ListView(自定义适配器)
- 安卓:将数据库中的数据查询出来用adapter(SimpleAdapter,SimpleCursorAdapter,自定义适配器CursorAdapter)绑定到listview上
- Android开发之ListView 适配器(Adapter)优化
- Android开发之ListView 适配器(Adapter)优化
- Android开发之ListView 适配器(Adapter)优化
- Android开发之ListView 适配器(Adapter)优化
- Android开发之ListView 适配器(Adapter)优化
- 安卓开发_浅谈ListView之分页列表
- Android开发之ListView 适配器(Adapter)优化
- (转)Android开发之ListView 适配器(Adapter)优化
- [ListView]Android开发之ListView 适配器(Adapter)优化
- Android开发之ListView 适配器(Adapter)优化
- ListView适配器--ArrayAdapter;SimpleAdapter;SimpleCursorAdapter
- 安卓自学笔记:7:用SimpleAdapter创建ListView
- Android开发之ListView 适配器(Adapter)优化
- Android开发之ListView 适配器(Adapter)优化
- Android开发之ListView 适配器(Adapter)优化
- Android开发之ListView 适配器(Adapter)优化
- Android开发之ListView 适配器(Adapter)优化