问题:
在 Activity 中设置 OnLongClickListener 时,如何将其传递到适配器中?
适配器的构造函数:
public Activity mcontext;
public View.OnLongClickListener LongClicking;
public SubjectsAdapter(Activity context, View.OnLongClickListener longClick) {
this.mcontext = context;
this.LongClicking = longClick;
}
在 Activity 中:
adapter = new SubjectsAdapter(this, /*A OnLongClickListener here */ );
我知道这可能是一个复杂的问题,我对 Android 还比较陌生
最佳答案
基本上你可以将它作为匿名类传递
adapter = new SubjectsAdapter(this, new View.OnLongClickListener() {
@Override
public boolean onLongClick(View view) {
//do your stuff
}
} );
但是如何为特定 View 注册此回调?我建议将其注册到 View ,该 View 对此回调感兴趣 setOnLongClickListener而不是将其传递给适配器(但这取决于您的应用程序)。
yourview.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View view) {
//do your stuff
}
});
关于java - Android:将 OnClickListener 传递到适配器中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36814963/