[英]How to open new activity from clicking an item from recyclerview
how do you open a new empty activity when I click my List view item? 当我单击列表视图项时,如何打开一个新的空活动?
I got the codes from another source, I can do it with a button, but confused to do it on a custom recycler view? 我从另一个来源获得了代码,我可以用一个按钮来做,但是很困惑在自定义回收者视图上做?
This is my Mainactivity
code 这是我的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());
You have to follow these steps: 您必须按照以下步骤操作:
1 - Pass the Context to your adapter using the Constructor 1-使用构造函数将上下文传递给适配器
2 - In the onBindViewHolder function start your activity like that : 2-在onBindViewHolder函数中,像这样开始活动:
holder.btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(context, ActivityToStart.class);
context.startActivity(intent);
}
});
For clicking event, you need to implement an onClickListener as below: 对于click事件,您需要实现以下onClickListener:
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
}
});
(If you take advantage of 'Cntl+ENTER'. This work is much easier.) (如果您利用“ Cntl + ENTER”。这项工作会容易得多。)
And for the changing the screen(or Activity). 并用于更改屏幕(或活动)。
You can do it like this: 您可以这样做:
Intent intent = new Intent(this, SecondActivity.class);
startActivity(intent);
I hope this is helpful. 我希望这是有帮助的。
You can set onClickListener in the onBindViewHolder function in your adapter.And use intent to navigate to another activity Like below example. 您可以在适配器的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.