英文:
Single selection recyclerView not working in fragment
问题
我正在使用singleSelection recyclerView
,在activity
中它正常工作,但当我将其从activity
转换为fragment
时,它显示了错误,类似于。
我在片段中使用了这段代码
public class HomeworkFragment extends Fragment implements HomeworkAdapter.SingleClickListener {
// ...
adapter = new HomeworkAdapter(view.getContext(), productList);
adapter.setOnItemClickListener(view.getContext()); // 这里出现错误
recyclerView.setAdapter(adapter);
// ...
}
@Override
public void onItemClickListener(int position, View view) {
adapter.selectedItem();
}
适配器中的代码
private static SingleClickListener sClickListener;
public void setOnItemClickListener(SingleClickListener clickListener) {
sClickListener = clickListener;
}
public interface SingleClickListener {
void onItemClickListener(int position, View view);
}
我不知道问题出在哪里,但我尝试了一些方式,如getActivity()
,view.getContext()
,但都没有起作用。当它在activity
中时,我是这样做的:adapter.setOnItemClickListener(HomeworkActivity.this);
,在activity
中它正常工作。
提前感谢!
祝编码愉快!
英文:
I'm using singleSelection recyclerView
it was working correct in activity
but when i conevert it activity
to fragment
it's showing me error like
I'm using this code in freagment
public class HomeworkFragment extends Fragment implements HomeworkAdapter.SingleClickListener
.
adapter = new HomeworkAdapter(view.getContext(), productList);
adapter.setOnItemClickListener(view.getContext()); //error here
recyclerView.setAdapter(adapter);
.
@Override
public void onItemClickListener(int position, View view) {
adapter.selectedItem();
}
This code in Adapter
private static SingleClickListener sClickListener;
public void setOnItemClickListener(SingleClickListener clickListener) {
sClickListener = clickListener;
}
public interface SingleClickListener {
void onItemClickListener(int position, View view);
}
I don't know what is the problem but i tries only fewThings like getActivity()
, view.getContext()
but nothing works
When it was in activity I was doing this adapter.setOnItemClickListener(HomeworkActivity.this);
it was working fine in activity
Thanks in advance!
Happy coding!
答案1
得分: 0
你的方法setOnItemClickListener(SingleClickListener clickListener)
接受一个参数为SingleClickListener
的参数,所以你应该传递this
或者HomeFragment.this
,而不是context
。
英文:
your method setOnItemClickListener(SingleClickListener clickListener)
takes SingleClickListener
as an argument so you should pass this
or HomeFragment.this
instead of context
专注分享java语言的经验与见解,让所有开发者获益!
评论