私はリストデータを持っていますが、アイテムの1つをクリックすると詳細が表示されますが、詳細アクティビティにデータを渡す方法はわかりません。詳細データを取得するにはアンドロイドスタジオ
だから、どうすればいいですか?私はスタックオーバーフローで利用可能な答えの多くの方法を試してみましたが、それらのすべてが動作していない、または私の問題に関連していません。
だから、親切にこれを行うのに役立ちます。ここ
私のアダプタスクリプト:
public class VoucherAdapter extends ArrayAdapter<Voucher> {
List<Voucher> mVoucherList;
LayoutInflater vi;
int Resource;
VoucherAdapter.ViewHolder holder;
private Context context;
public VoucherAdapter(Context context, int resource, List<Voucher> objects) {
super(context, resource, objects);
vi = (LayoutInflater) context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
Resource = resource;
mVoucherList = objects;
this.context = context;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// convert view = design
View v = convertView;
if (v == null) {
holder = new VoucherAdapter.ViewHolder();
v = vi.inflate(R.layout.list_voucher, parent, false);
holder.kode = (TextView) v.findViewById(R.id.txtkode);
holder.status = (TextView) v.findViewById(R.id.txt_stat);
holder.expiredDate = (TextView) v.findViewById(R.id.txt_tgl_exp);
holder.list = (RelativeLayout) v.findViewById(R.id.itemListVoucher);
v.setTag(holder);
} else {
holder = (VoucherAdapter.ViewHolder) v.getTag();
}
holder.kode.setText(mVoucherList.get(position).getSerialNumber());
holder.status.setText(mVoucherList.get(position).getStatus());
DateFormat df = new SimpleDateFormat("MMM dd yyyy HH:mma");
String reportDate = df.format(mVoucherList.get(position).getExpiryDate());
holder.expiredDate.setText(reportDate);
holder.list.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent detailIntent = new Intent(getContext(), VoucherDetailAktif.class);
context.startActivity(detailIntent);
//how to pass the data to detail activity?
}
});
return v;
}
static class ViewHolder {
public TextView kode;
public TextView expiredDate;
public TextView status;
public RelativeLayout list;
}
}
がParcelableとしてあなたのクラスを実装し、このように送信しない場合は、カスタムモデルがParcelableを実装して確認してくださいあなたの
タイポ、フォーマットと詳細 – user7294900