怀抱观古今,寝食展戏谑。这篇文章主要讲述高级控件安卓5——滚动视图列表视图[ListViewSimpleAdapter类]相关的知识,希望能为你提供帮助。
滚动视图
<
ScrollView
android: layout_width="fill_parent"
android: layout_height="fill_parent">
<
/ScrollView>
滚动试图指的是提供一个专门的容器,可以装下多于屏幕宽度的组件,而后采用拖拽的方式
显示所有在ScrollView中的组件
注意:滚动视图中只能有一个组件
列表视图【ListView、SimpleAdapter类】1.ListView控件的特点:每个列表项独占一行,每行的布局都相同。
2.使用SimpleAdapter类设置列表视图
SimpleAdapter类的主要功能是将List集合的数据转换为ListView可以支持的数据。
new SimpleAdapter ( 上下文对象【this】, 列表的数据, 列表项的布局资源文件,
键名数组【new String[ ]{"标签名"}】,列表项所有控件的索引值【new int[ ]{R.id.控件id】)
方法 |
描述 |
public SimpleAdapter ( Context context, List< ? extends Map< String,?> > , int resource, String[] from, int[] to) |
创建SimpleAdapter对象,需要传入Context对象,封装的List集合,要使用的布局文件ID,需要显示的key(对应Map)、组件的ID |
public int getCount() |
得到保存集合的个数 |
public Object getItem(int position) |
取得指定位置的对象 |
public long getItemId(int position) |
取得指定位置对象的ID |
public void notifyDataSetChanged() |
当列表项发生改变时,通知更新显示ListView |
文章图片
列表项显示模板——res/layout/data_list.xml
文章图片
ListView事件
方法 |
描述 |
public void setOnItemSelectedListener( AdapterView.OnItemSelectedListener listener) |
选项选中时触发 |
public void setOnItemClickListener( AdapterView.OnItemClickListener listener) |
选项单击时触发 |
public void setOnItemLongListener( AdapterView.OnItemLongListener listener) |
选项长按时触发 |
文章图片
文章图片
1ListView lv=(ListView)findViewById(R.id.listView); 2List< Map< String,Object> > list=new ArrayList< Map< String,Object> > (); 3//从数组资源中获取数据 4String[] data=https://www.songbingjia.com/android/getResources().getStringArray(R.array.haha); 5for(int i=0; i< data.length; i++){ 6Map< String,Object> map=new HashMap< String,Object> (); 7map.put("img", R.drawable.b); 8map.put("txt", data[i]); 9list.add(map); 10} 11 //参数列表:上下文对象、列表的数据、列表项的布局资源文件、键名数组、列表项所有控件的索引值 12SimpleAdapter adapter=new SimpleAdapter(this, list,R.layout.data_list, new String[]{"img","txt"}, new int[]{R.id.Dataimg,R.id.Datatv}); 13lv.setAdapter(adapter); 14 15 //设置ListView的单击事件 16lv.setOnItemClickListener(new OnItemClickListener() { 17/**ListView选项单击时触发 18*adp 取得AdapterView对象 19*view 取得AdapterView的父组件 20*position 取得Adapter的操作位置 21*id 取得ListView所在行的编号 22*/ 23public void onItemClick(AdapterView< ?> adp, View view, int position, long id) { 24Object obj=adp.getItemAtPosition(position); 25Map< String, Object> objs=(Map< String, Object> )obj; 26String str= (String)objs.get("txt"); 27Toast.makeText (Listview.this, str, 1000).show(); 28} 29}); 30
SimpleAdapter与List事件的使用——部分代码【高级控件安卓5——滚动视图列表视图[ListViewSimpleAdapter类]】
推荐阅读
- Android自定义控件实战——滚动选择器PickerView
- 高级控件安卓5——ListActivity
- 安卓MP3播放器开发实例之进度条和歌词更新的实现
- /application/nginx/sbin/nginx -h
- Android(java.lang.OutOfMemoryError:GC overhead limit exceeded)
- 兔子--Android Support v4包丢失的解决的方法
- Android Service 不被杀死并提高优先级
- win10首页恢复初始状态的办法图文详细教程
- 免费升级正版Win10办法总结