【问题标题】:ListView onItemClickListener or Inner view click listener?ListView onItemClickListener 还是内部视图点击监听器?
【发布时间】:2016-07-03 09:39:34
【问题描述】:

两种方法中哪一种在性能和维护方面更好:

  1. 实现listView.setOnItemClickListener()
  2. click listener 添加到convertView 或查看getView() 中的对象 方法。

在适配器的getView方法中添加点击监听是否也违反了单一职责原则?

提前致谢:-)

【问题讨论】:

  • 不在getView 方法中,而是在ViewHolder 类中 - 是的。
  • @SergeyShustikov,我仍然不清楚....使用 ViewHolders 我们可以在行元素上设置点击侦听器,但在 ViewHolder 中布局的主要父级(可能是线性或相对)上应用点击侦听器是listView.setOnItemClickListener() 的更好方法或实现更好?您还可以提供更多关于您的答案的信息,如“是”。

标签: android listview android-adapter onitemclicklistener


【解决方案1】:

这取决于实现。使用简单的列表,建议使用第一种方法。如果您有一个带有可聚焦视图的自定义适配器,我推荐第二种方法。

责任与点击侦听器的添加无关,而是与点击侦听器的作用有关。如果它在适配器内部执行一些业务逻辑(有变化的症状),它就违反了 SRP。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-12-27
    • 1970-01-01
    • 1970-01-01
    • 2012-09-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多