Java 如何为意图创建公共功能
我有一个RecyclerView,我给它一个新的监听器,然后打开一个新的活动Java 如何为意图创建公共功能,java,android,android-studio,Java,Android,Android Studio,我有一个RecyclerView,我给它一个新的监听器,然后打开一个新的活动 private TextView Judul, Sub; private ImageView Gambar; private RelativeLayout ListItem; private Context context; private String[] komposisi; private String[] kemasan; private Stri
private TextView Judul, Sub;
private ImageView Gambar;
private RelativeLayout ListItem;
private Context context;
private String[] komposisi;
private String[] kemasan;
private String[] caraPakai;
ViewHolder(@NonNull final View itemView) {
super(itemView);
Resources res = itemView.getResources();
Judul = itemView.findViewById(R.id.memetitle);
Sub = itemView.findViewById(R.id.sub_meme);
Gambar = itemView.findViewById(R.id.meme);
komposisi = res.getStringArray(R.array.ikomposisi);
kemasan = res.getStringArray(R.array.ikemasan);
caraPakai = res.getStringArray(R.array.iCara_Pakai);
context = itemView.getContext();
ListItem = itemView.findViewById(R.id.item_list);
ListItem.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
int i = getAdapterPosition();
int a = R.drawable.comingsoon;
Intent intent = new Intent(context, Detail.class);
intent.putExtra("komposisi", komposisi[i]);
intent.putExtra("kemasan", kemasan[i]);
intent.putExtra("pakai", caraPakai[i]);
Bundle bundle = new Bundle();
bundle.putInt("gambar", memeList.get(i));
intent.putExtras(bundle);
context.startActivity(intent);
}
}
在其他活动中,它也需要一个带有某种意图的意图。putExtra,我想我应该为这个意图创建一个公共函数,它只调用细节
ListItem.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
detail()
}
}
问题是如何使函数更详细
抱歉,如果我的问题让人困惑,希望您理解我的问题,非常感谢您您可以添加到您的活动中
public void detail(){
//some codes here
int i = getAdapterPosition();
int a = R.drawable.comingsoon;
Intent intent = new Intent(context, Detail.class);
intent.putExtra("komposisi", komposisi[i]);
intent.putExtra("kemasan", kemasan[i]);
intent.putExtra("pakai", caraPakai[i]);
Bundle bundle = new Bundle();
bundle.putInt("gambar", memeList.get(i));
intent.putExtras(bundle);
context.startActivity(intent);
}
首先,您不应该使用公共函数来实现此目的。第二,如果你做了一个公开活动,你将如何从另一个班级的Judal和Sub那里获得文本?但是,如果要为此创建公共函数,请向函数中添加参数。参数将是您试图使用intent发送的项目。我希望你能理解。如果您仍然想要一个编码的解决方案,请告诉我。阅读我很困惑地说:Dcant使用Context on Intent,如果使用public void details,您可以使用Context=this;之类的内容从活动本身获取上下文;。