gpt4 book ai didi

android - 回收站 View : item position intent

转载 作者:行者123 更新时间:2023-11-30 05:10:37 30 4
gpt4 key购买 nike

我成功地为recyclerView设置了onClickListener,但是我的问题是

recyclerview 中的每个项目都转到相同的新 Activity !!!

我们可以用项目位置或什么来解决它吗??

我正在尝试将每个 RecyclerView(ITEM 或单元格)发送到一个新的 activity。说第一个是食物,将它发送到食物页面,下一个是健康,将它发送到健康页面......等等。我正在尝试更改它发送给用户的 activity.class 对于每个不同的 View 主要 Activity 。

我的适配器类

import java.util.List;

public class Adapter extends RecyclerView.Adapter<Adapter.myViewHolder>{



Context mcontext;
List<item> mData;
RecyclerView recyclerView;







public Adapter(Context mcontext, List<item> mData) {
this.mcontext = mcontext;
this.mData = mData;
}

@NonNull
@Override
public myViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {

LayoutInflater inflater=LayoutInflater.from(mcontext);
View v =inflater.inflate(R.layout.card_item,parent,false);

return new myViewHolder(v);
}

@Override
public void onBindViewHolder(@NonNull final myViewHolder holder, final int position) {

holder.background_img.setImageResource(mData.get(position).background);
holder.tv_title.setText(mData.get(position).profilename);
holder.profile_photo.setImageResource(mData.get(position).profilephoto);
holder.tv_subtitle.setText(mData.get(position).subtitle);
holder.share.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {

Intent sharingIntent = new Intent(android.content.Intent.ACTION_SEND);
sharingIntent.setType("text/plain");
String shareBody = "Your body here";
String shareSub = "Your subject here";
sharingIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, shareSub);
sharingIntent.putExtra(android.content.Intent.EXTRA_TEXT, shareBody);
mcontext.startActivity(Intent.createChooser(sharingIntent, "Share using"));
}
});

holder.itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {




Intent intent = new Intent(mcontext, SomaBay_bulding_Structure.class);

mcontext.startActivity(intent);


}
});

}



@Override
public int getItemCount() {
return mData.size();
}

public class myViewHolder extends RecyclerView.ViewHolder{

ImageView profile_photo,background_img;
TextView tv_title,tv_subtitle;
Button share;


public myViewHolder(View itemView) {
super(itemView);
profile_photo=itemView.findViewById(R.id.profile_img);
background_img=itemView.findViewById(R.id.card_background);
tv_title=itemView.findViewById(R.id.card_title);
tv_subtitle=itemView.findViewById(R.id.card_subtitle);
share = itemView.findViewById(R.id.button_share);


}


}
}

最佳答案

据我了解你的问题:你需要开始 Activity 取决于不同的项目类型,如果你有这个参数:

            Intent intent;
if(mData.get(position).type.equals("FOOD")){
intent = new Intent(mcontext, FoodActivity.class);
}else if(mData.get(position).type.equals("HEALTH")){
intent = new Intent(mcontext, HealthActivity.class);
}else if(...){
//
}
startActivity(intent);

关于android - 回收站 View : item position intent,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53818269/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com