300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > 【Android开发】自定义ListView 使用通用适配器 并实现ListView上的每一项和每一项

【Android开发】自定义ListView 使用通用适配器 并实现ListView上的每一项和每一项

时间:2023-05-16 11:05:02

相关推荐

【Android开发】自定义ListView 使用通用适配器 并实现ListView上的每一项和每一项

ListView在Android开发中是比较常用的系统组件,但是有时候我们除了需要做ListView上每一行的点击监听事件之外,如果每一行上还有其他需要监听的控件例如Button、CheckBox等,就必须要进行特殊的处理。

本文自定义的ListView,实现了ListView的每一项和上面的Button按钮能同时监听点击事件(其他控件的做法与Button一样),并且使用通用适配器ListSimpleAdapter,相对于普通的ListActivity,更具扩展性,适配器上可以很容易添加更多各式的控件。

最终效果:

先写listsimpleadapter.xml,这个是ListView每一项的布局文件。如果想在每一项上要添加其他的控件,可以修改此文件。

自定义通用适配器的java代码。For循环中是对ListView中每一项中包含所有的组件进行判定每个组件的类型,从而去设置其数据。其中【instanceof】这个关键字是对Object 类型的判断。

这里要特别指出,由于textview的某种原因,我也不是很清楚,只是经过测试,如果其他类似于Button、CheckBox等控件设置在textview的后面,其对应的代码将不执行,也就是说程序运行时把button和CheckBox都映射成了textview,故执行了textview中的代码。这个问题现在我也不知道原因所在。但是如果将Button、CheckBox等控件设置放在textview之前,代码正常运行。

写主界面的TestActivity:

至此,一个ListView就做完了。与传统的ListView,代码具有很高的重用性和扩展性,并且能很容易实现一个ListView。

代码附件,在上一篇的基础上我将第一个标签改成了ListView。

【Android开发】自定义ListView 使用通用适配器 并实现ListView上的每一项和每一项上的按钮等控件同时监听

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。