![](/img/trans.png)
[英]Android RecyclerView how to open new activity from clicking the items
[英]How to open new activity from clicking an item from recyclerview
当我单击列表视图项时,如何打开一个新的空活动?
我从另一个来源获得了代码,我可以用一个按钮来做,但是很困惑在自定义回收者视图上做?
这是我的Mainactivity
代码
@Override
protected void onStart() {
super.onStart();
FirebaseRecyclerAdapter<Model, ViewHolder> firebaseRecyclerAdapter =
new FirebaseRecyclerAdapter<Model, ViewHolder>(
Model.class,
R.layout.row,
ViewHolder.class,
mDbRef
) {
@Override
protected void populateViewHolder(ViewHolder viewHolder, Model model, int position) {
viewHolder.setDetails(getApplicationContext(), model.getTitle(), model.getDescription(), model.getImage());
您必须按照以下步骤操作:
1-使用构造函数将上下文传递给适配器
2-在onBindViewHolder函数中,像这样开始活动:
holder.btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(context, ActivityToStart.class);
context.startActivity(intent);
}
});
对于click事件,您需要实现以下onClickListener:
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
}
});
(如果您利用“ Cntl + ENTER”。这项工作会容易得多。)
并用于更改屏幕(或活动)。
您可以这样做:
Intent intent = new Intent(this, SecondActivity.class);
startActivity(intent);
我希望这是有帮助的。
您可以在适配器的onBindViewHolder函数中设置onClickListener,并使用intent导航到另一个活动,如下面的示例所示。
@Override
public void onBindViewHolder(final LeaderBoardAdapter.MyViewHolder holder, final int
position) {
//holder.newsUrl.setText(newsItemList.get(position).getUrl());
holder.newsDescription.setText(newsItemList.get(position).getDescription());
holder.newsUrl.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(mContext,ReadMoreActivity.class);
intent.putExtra("title",newsItemList.get(position).getTitle());
mContext.startActivity(intent);
}
});
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.