我按照本教程https://www.youtube.com/watch?v=zEkvbCTYun8设置Onclicklistener方法。但是在本教程中,项目是有效的,因为所有内容都是在活动上完成的。我尝试调整代码以处理片段内的recyclerview并将其设置为onclicklistener。但是,当我将所有活动投射到界面时,所有内容都会引发错误。
创建引用MainActivity的适配器的原始代码(来自视频):
mMediaStoreAdapter=new MediaStoreAdapter(this);
矿:
mMediaStoreAdapter=new MediaStoreAdapter(getActivity());
构造函数和接口:
private OnClickThumbListener mOnClickThumbListener;
public interface OnClickThumbListener {
void OnClickImage(Uri imageUri);
}
public MediaStoreAdapter(Activity activity) {
this.mActivity = activity;
this.mOnClickThumbListener=(OnClickThumbListener)activity;
}
我没有得到我犯的错误,错误显示无法使用强制转换((OnClickThumbListener)活动)。也许这不是正确的方法,或者应该在构造函数中添加接口对象作为参数?在教程上工作正常。请有人给我一个指导。在此先感谢!!
答案 0 :(得分:0)
您可以尝试使用Context来代替在构造函数中提供Activity吗? 请试试这个。
public MediaStoreAdapter(Context activity)
我认为它应该有效。