Gil*_*Lee 5 android listview onitemclicklistener onclicklistener
据我所知,有两种方法可以处理不同列表项上的点击:
setTag()到集类型在适配器列表中的项目,然后setOnItemClickListener()在列表getTag()视图的区分类型,如下所示:listview.setOnItemClickListener(new OnItemClcikListener(){});
setOnClickListener()在 期间单独为每个项目getView(),像这样:item.setOnClickListener(new OnClickListener() {});
有什么区别,哪个更受欢迎?
OnItemClickListener与 相比非常容易管理OnClickListener。如果您仍然愿意管理,OnClickListener我会告诉您为什么OnItemClickListener比 管理好得多 OnClickListener。
一旦你开始滚动,ListView项目就会开始被重用,你最终会创建很多OnClickListener. 别担心,这不是内存泄漏,因为 GC 会出现并收集这些内存,但您也不应该感到安全,因为GC pauses your activity即使只有几分之一秒,这也是相当大的。
所以我会同意,OnItemClickListener 除非你为单个列表项计划了不同的东西。
如果您需要创建每个项目的特定部分可点击,或者希望对给定项目执行多个操作,那么最好将这些操作收集到一个 OnClickListener 中,该 OnClickListener 创建一次,然后附加到每个项目getView() 中的项目。您可以通过使用 setTag() 将有关单击操作的元数据以及可能的列表位置附加到视图本身来区分单击了哪个项目。
| 归档时间: |
|
| 查看次数: |
2206 次 |
| 最近记录: |