[英]Pass ArrayList<IntArray> from one activity to Another Activity Android
[英]Display data from ArrayList in android from one activity to another activity
我想在單擊按鈕時顯示汽車規格信息。 附上插圖。 數組列表中的數據。 到目前為止我的代碼:
@Override
public void onBindViewHolder(@NonNull final CardViewHolder holder, int position) {
Car car = listCar.get(position);
Glide.with(holder.itemView.getContext())
.load(car.getFoto())
.apply(new RequestOptions().override(350, 550))
.into(holder.imgFoto);
holder.tvCarName.setText(car.getName());
holder.tvCarSpecs.setText(car.getSpecs());
holder.btnSpec.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent detailCar= new Intent(v.getContext(), DetailActivity.class);
v.getContext().startActivity(detailPage);
}
});
}
詳細活動代碼
public class DetailActivity extends AppCompatActivity {
private ArrayList<Car> listCar;
public DetailActivity(ArrayList<Car> list) {
this.listCar = list;
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_detail);
Intent intent = getIntent();
listElang = (ArrayList<Elang>) intent.getSerializableExtra("DATA");
}
}
首先,您必須將 Car 類設置為可打包,然后您可以將 car 對象傳遞給另一個活動
Intent detailCar= new Intent(v.getContext(), DetailActivity.class);
detailCar.putExtra("item",car)
v.getContext().startActivity(detailCar);
在 DetailActivity 中只獲取對象
onCreate(Bundle savedInstanceState){
if(getIntent()!=null && getIntent.getParcelableExtra("item")!=null){
Car car=(Car)getIntent().getParcelable("item")
}
}
對於初學者教程,請檢查此鏈接
要在按鈕單擊時顯示汽車規格信息,您可以使用意圖將數據從一個活動傳遞到另一個活動。
首先創建一個Serializable模型類
像這樣:
public class DemoModel implements Serializable{
String name;
String number;
public DemoModel(String name, String number){
this.name=name;
this.number=number;
}
public String getName(){
return name;
}
public void setName(String name){
this.name=name;
}
public String getNumber(){
return number;
}
public void setNumber(String number){
this.number=number;
}
}
OnItemClick ArrayListdatalist;
Intent intent=new Intent(this,FirstActivity.class);
intent.putExtra("car_detail",datalist.get(i));
startActivity(intent);
第二個活動
DemoModel cardetail= (DemoModel) getIntent().getSerializableExtra("car_detail");
Log.e("check_response", ""+cardetail.getName()));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.