2.1.3常用组件2_第1页
2.1.3常用组件2_第2页
2.1.3常用组件2_第3页
2.1.3常用组件2_第4页
2.1.3常用组件2_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2.1.2 常用组件2,By wqwen,ListView,2,ListView是大量数据展示的常用组件。 ListView利用包含以下两个部分:,ListView组件 ListView的数据(Adapter),最简单的ListView例子,3,public class MyListActivity extends ListActivity public void onCreate(Bundle bundle) super.onCreate(bundle); String names = new String “北京”, “上海”, “天津”, “重庆”, “广东”, “广西”, “湖南”,

2、“湖北”; this.setListAdapter(new ArrayAdapter(this, android.R.layout.simple_list_item_1, names); Override protected void onListItemClick(ListView l, View v, int position, long id) super.onListItemClick(l, v, position, id); Object obj = this.getListAdapter().getItem(position); String keyword = obj.toStr

3、ing(); Toast.makeText(this, “你选择的是: + keyword, Toast.LENGTH_LONG).show(); ,自定义ListView,4,ListView可以通过自定义的布局,实现更加丰富,更加实用的列表示图,创建Activity类 创建Activity布局文件 创建ListView中条目的布局文件 编写代码,主界面布局文件,5, ,ListView行布局,6, ,添加图片素材,7,在res目录下新建一个drawable目录,然后把图片复制到此目录 下,Activity类概述,8,制造商的类,ListView的适配器类,Activity类,Activit

4、y主类,9,public class ATListViewCustomDemoActivity extends Activity Override public void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); setContentView(R.layout.main); ListView listView=(ListView)findViewById(R.id.lvCar); CarAdapter carAdapter = new CarAdapter(); List list = get

5、CarList(); carAdapter.setList(list); listView.setAdapter(carAdapter); ,创建适配器实例,设置适配器,内部类1对象类,10,此对象类用于存储ListView中每一行的信息,内部类2适配器类1,11,适配器类用于实现自定义的ListView视图 class CarAdapter extends BaseAdapter private List list = null; private LayoutInflater mInflater=null; class ViewHolder TextView text; ImageView

6、icon; private LayoutInflater getInflater () if(mInflater=null) mInflater= (LayoutInflater)getSystemService(LAYOUT_INFLATER_SERVICE); return mInflater; ,此内部类用于存放ListView的UI视图组件,内部类2适配器类2,12,Override public int getCount() return list.size(); public void setList(List list) this.list = list; Override pu

7、blic Object getItem(int position) return list.get(position); Override public long getItemId(int position) return position; ,内部类2适配器类3,13,Override public View getView(int position, View convertView, ViewGroup parent) ViewHolder holder; CarManufacturer model=list.get(position); if (convertView = null) mInflater=getInflater(); convertView = mInflater.inflate(R.layout.view,null); holder = new ViewHolder(); holder.text = (TextView) convertView.findViewById(R.id.tvName); holder.icon = (ImageView) convertView.findViewById(R.id.imgIcon); convertView.setTag(holder); else holder = (ViewHolder) convert

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论