在 listView 中保存动态添加的数据
Hold dynamically added data in listView
我设计了一个 ListView,我在其中动态添加了数据,但是当我刷新或重新启动我的应用程序时,数组大小变成 zero/no 我添加的 listView 中的数据 previously.How 我可以持有我的 listView 中的数据并将数据添加到 same.if 然后我可以保存它,可以轻松地向其中添加数据。
Activity 2:(我打算从 activity 1 到这里的数组)
ListView listView=(ListView) findViewById(R.id.AcceptedList);
ArrayList<PendingPickupBEAN> listObject = (ArrayList<PendingPickupBEAN>) getIntent().getSerializableExtra("referArray");
Log.d(TAG," size of intent list " +listObject.size());
CustomListViewAdapterGet customListViewAdapterGet = new CustomListViewAdapterGet(this,R.layout.list_item_accepted,listObject);
listView.setAdapter(customListViewAdapterGet);
}
class CustomListViewAdapterGet 扩展 ArrayAdapter {
Context context;
LayoutInflater inflater;
List<PendingPickupBEAN> obj ;
public CustomListViewAdapterGet(Context context, int resourceId,
ArrayList<PendingPickupBEAN> obj) {
super(context, resourceId,obj);
this.context = context;
this.obj = obj;
inflater = LayoutInflater.from(context);
}
private class ViewHolder {
TextView txt_pickupID;
TextView txt_address;
Button btn_More;
}
public View getView(final int position, View view, final ViewGroup parent) {
final ArrayAdapter<PendingPickupBEAN> adapter=new ArrayAdapter<PendingPickupBEAN>
(Activity_Pickup.this,R.layout.list_item_accepted,R.id.Accepted_pickupID);
final CustomListViewAdapterGet.ViewHolder holder;
if (view == null) {
holder = new CustomListViewAdapterGet.ViewHolder();
view = inflater.inflate(R.layout.list_item_accepted, null);
holder.txt_pickupID = (TextView) view.findViewById(R.id.Accepted_pickupID);
holder.btn_More = (Button) view.findViewById(R.id.btn_More);
view.setTag(holder);
} else {
holder = (CustomListViewAdapterGet.ViewHolder) view.getTag();
}
holder.txt_pickupID.setText(obj.get(position).getPickupID());
holder.btn_More.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
holder.btn_More.setBackgroundResource(R.color.colorAccept);
}
});
return view;
}
}
您可以将数据存储在数据库中。
将您的数据存储在一些永久性存储器上
我设计了一个 ListView,我在其中动态添加了数据,但是当我刷新或重新启动我的应用程序时,数组大小变成 zero/no 我添加的 listView 中的数据 previously.How 我可以持有我的 listView 中的数据并将数据添加到 same.if 然后我可以保存它,可以轻松地向其中添加数据。
Activity 2:(我打算从 activity 1 到这里的数组)
ListView listView=(ListView) findViewById(R.id.AcceptedList);
ArrayList<PendingPickupBEAN> listObject = (ArrayList<PendingPickupBEAN>) getIntent().getSerializableExtra("referArray");
Log.d(TAG," size of intent list " +listObject.size());
CustomListViewAdapterGet customListViewAdapterGet = new CustomListViewAdapterGet(this,R.layout.list_item_accepted,listObject);
listView.setAdapter(customListViewAdapterGet);
}
class CustomListViewAdapterGet 扩展 ArrayAdapter {
Context context;
LayoutInflater inflater;
List<PendingPickupBEAN> obj ;
public CustomListViewAdapterGet(Context context, int resourceId,
ArrayList<PendingPickupBEAN> obj) {
super(context, resourceId,obj);
this.context = context;
this.obj = obj;
inflater = LayoutInflater.from(context);
}
private class ViewHolder {
TextView txt_pickupID;
TextView txt_address;
Button btn_More;
}
public View getView(final int position, View view, final ViewGroup parent) {
final ArrayAdapter<PendingPickupBEAN> adapter=new ArrayAdapter<PendingPickupBEAN>
(Activity_Pickup.this,R.layout.list_item_accepted,R.id.Accepted_pickupID);
final CustomListViewAdapterGet.ViewHolder holder;
if (view == null) {
holder = new CustomListViewAdapterGet.ViewHolder();
view = inflater.inflate(R.layout.list_item_accepted, null);
holder.txt_pickupID = (TextView) view.findViewById(R.id.Accepted_pickupID);
holder.btn_More = (Button) view.findViewById(R.id.btn_More);
view.setTag(holder);
} else {
holder = (CustomListViewAdapterGet.ViewHolder) view.getTag();
}
holder.txt_pickupID.setText(obj.get(position).getPickupID());
holder.btn_More.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
holder.btn_More.setBackgroundResource(R.color.colorAccept);
}
});
return view;
}
}
您可以将数据存储在数据库中。
将您的数据存储在一些永久性存储器上