Android:我可以在创建ListView的活动中处理BaseAdapter项的onClick吗?
我有一个用于Android:我可以在创建ListView的活动中处理BaseAdapter项的onClick吗?,android,android-listview,onclicklistener,listview-adapter,Android,Android Listview,Onclicklistener,Listview Adapter,我有一个用于ListView的自定义适配器,它使用扩展BaseAdapter的自定义适配器。在这个自定义适配器中,我有一个视图保持架,用于保存每个列表项中显示的项 我是否可以在我创建并填充适配器类中的列表视图的活动中获得特定列表项子视图的单击回调 private ViewClickListener mViewClickListener; public interface ViewClickListener { void onImageClicked(int position); }
ListView
的自定义适配器,它使用扩展BaseAdapter
的自定义适配器。在这个自定义适配器中,我有一个视图保持架,用于保存每个列表项中显示的项
我是否可以在我创建并填充适配器类中的列表视图的活动中获得特定列表项子视图的单击回调
private ViewClickListener mViewClickListener;
public interface ViewClickListener {
void onImageClicked(int position);
}
public void setViewClickListener (ViewClickListener viewClickListener) {
mViewClickListener = viewClickListener;
}
您可以让您的活动
实现ViewClickListener
界面。记得调用myAdapter.setViewClickListener(这个)活动中的code>
在getView
方法中:
imageView.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
mViewClickListener.onImageClicked(position);
}
});
这会处理listview项单击吗?或者listview的某个项目中的视图?这是针对整个项目的,所以当单击列表项目中的视图时,您需要执行操作?完全正确!对于listview项中的特定项。更新了答案,您还可以使用适配器的构造函数,该构造函数将ViewClickListener作为参数,这样您就不必记得在以后设置它了谢谢Niko。我不知道我能做到。