我有一個RecyclerView
其中包含若干數據存儲在CardView
長按我啓用上下文菜單後,也。
但我想要做的是將數據存儲在列表<>中,然後從另一個活動類中檢索它,我可以使用這些數據設置某些特定的EditText
。
我不知道在那裏我得到什麼錯在這裏是我的代碼: -
長按獲取數據,並在列表存儲從RecyclerView獲取數據長按
public List<String> Data=new ArrayList<>();
TextView name,qunat,refill;
String nameMed,quantity,refillAmt;
@Override
public void onItemLongClick(View view, int position) {
name = (TextView) view.findViewById(R.id.nameOfUpmingMed);
qunat=(TextView)view.findViewById(R.id.QuantOfMed);
refill=(TextView)view.findViewById(R.id.ReffilAmt);
nameMed = name.getText().toString();
quantity=qunat.getText().toString();
refillAmt=refill.getText().toString();
passData(nameMed,quantity,refillAmt,);
// Data.add(nameMed);Data.add(quantity);Data.add(refillAmt);
}
}));
public List<String> passData(String name, String quant, String refillAmt){
String Name,Quant,Refill;
Name=name;Quant=quant;Refill=refillAmt;
Data.add(Name);
Data.add(Quant);
Data.add(Refill);
for(int i=0;i<Data.size();i++){
Toast.makeText(getActivity(), "Pressed card is and "+Data.get(i), Toast.LENGTH_SHORT).show();
}
return Data;
}
當我檢索長數據單擊它工作正常,它會按下特定卡的數據。 但是,當我長時間傳遞數據列表時,它會先顯示先前按下的數據,然後顯示當前數據。
我的第二個問題是我想在另一個類訪問這個列表,但它不工作。對於其他類
代碼爲
prescriptionFragment=new PrescriptionFragment();
for(int i=0;i < prescriptionFragment.Data.size();i++){
if(i==0){
Toast.makeText(getApplication(),"data is "+prescriptionFragment.Data.get(i),Toast.LENGTH_LONG).show();
}
}
如何做到這一點,我如何從一個類中獲取數據到另一個卡片視圖中長按。或者有沒有其他的方式來做到這一點。
也許我建議採取看看這個http://stackoverflow.com/questions/2091465/how-do-i-pass-data-between-activities-on- android –
你可能需要在長時間按下該項目並將其存儲到數組列表中並將其移至下一個活動或片段。是對的嗎? –
我更喜歡parcelable這個。使用套餐 –