![](/img/trans.png)
[英]Android: On Item Click Listener for List View Base Adapter implementation
[英]I need to implementation click listener class on item in recycle view when using adapter and array list
我想当用户点击回收中的项目时移动第二个活动。 我有以下适配器:
public class AdapterWassafat extends RecyclerView.Adapter<AdapterWassafat.ViewHolder> {
private ArrayList<Item> itemsList;
private Context mContext;
public AdapterWassafat(ArrayList<Item> itemsList, Context mContext) {
this.itemsList = itemsList;
this.mContext = mContext;
}
@NonNull
@Override
public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_wasafat,parent,false);
return new ViewHolder(view);
}
@Override
public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
Item item = itemsList.get(position);
holder.text.setText(item.getText());
}
@Override
public int getItemCount() {
return itemsList.size();
}
public class ViewHolder extends RecyclerView.ViewHolder {
TextView text;
public ViewHolder(@NonNull View itemView) {
super(itemView);
text = itemView.findViewById(R.id.text_card_main);
}
}
}
我有这个 class 要添加到项目列表中:
public class Item {
private String text;
public Item(String text) {
this.text = text;
}
public Item() {
}
public String getText() {
return text;
}
public void setText(String text) {
this.text = text;
}
}
这个 class 有回收:
private AdapterWassafat adapter;
private RecyclerView recyclerView ;
private ArrayList<Item> myList = new ArrayList<>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_wasafat);
recyclerView = findViewById(R.id.wasafat_recyclerView);
recyclerView.setLayoutManager(new LinearLayoutManager(getBaseContext()));
adapter = new AdapterWassafat(getMyitem(),getBaseContext());
recyclerView.setAdapter(adapter);
}
private ArrayList<Item> getMyitem() {
ArrayList<Item> list = new ArrayList<>();
Item tips = new Item();
tips.setText("وصفة التمر ");
list.add(tips);
tips = new Item();
tips.setText("وصفة اللبن ");
list.add(tips);
tips = new Item();
tips.setText("وصفة الشاي الاخضر ");
list.add(tips);
return list;}
当用户单击项目移动到另一个活动时,我需要什么来制作回收视图? 比如,当用户点击项目وصفة الشاي,交换或继续进入这个活动等等。 我尝试了很多方法使它既 select 或单击,但没有成功。
在适配器中:
@Override
public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
Item item = itemsList.get(position);
Context context = holder.itemView.getContext();
holder.text.setText(item.getText());
holder.itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = Intent(context, YourActivity.class);
intent.putExtra("item", item.getText())
context.startActivity(intent);
}
});
}
在您的其他活动中,获取数据为:
// onCreate()
String value = getIntent().getStringExtra("item", "");
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.