1

我有一个关于与自定义适配器列表视图中创建一个点击收听的最佳实践的问题。所以,我的问题是:哪里更好实施点击监听器?在自定义适配器中,还是最好在Activity中实现setOnItemClickListener?的Android的ListView ClickListener

我已要求我的同事,但我们没有得到一分。所以,如果你能帮助我,我将非常感激。

在此先感谢

回答

3

setOnItemClickListener AFAIK没有 “最好” 的方式来做到这一点。这很大程度上取决于你想要达到的目标。

如果你只希望行内一个单个元件是可点击的,那么你就必须做到这一点的适配器内getView()方法。

但是,如果你想整行可以点击,那么你必须在getView()方法做的选择,或setOnItemClickListener()

活动里面如果要吹毛求疵关于这将是更好的后一种情况,它将取决于点击该行时采取的行动。如果它是任意小的东西,不需要访问许多其他对象,那么适配器内部就很容易。但是,如果它确实需要与其他对象(例如上下文,数据源等)进行交互,那么如果您已经在活动中引用了这些内容,则可以在“活动”中执行该操作。这样你就可以避免将所有这些事情传递给适配器。

2

实现在Activity