私の最初のアクティビティには、各セルにテキストビューを含むリストビューが含まれており、カスタム アダプターを使用しています。したがって、いずれかの項目をクリックすると、テキストフィールドを含むフォーム アクティビティが開きます。ユーザーは詳細を入力でき、フォームの保存ボタンを押すと、詳細がリストビューに表示されます。今、リストに項目を動的に追加しようとしています。クリックすると新しいインスタンス アイテムが追加されるボタンを作成して、より多くのユーザーが同じ方法で登録できるようにしました。これらの機能を実装することができました。ただし、私の問題は、新しく追加されたアイテムをクリックしてフォームアクティビティに移動し、[保存] をクリックすると、リストビューアクティビティに戻った後に新しく追加されたエントリが表示されないことです。表示されるのは最初のエントリだけです1人。そのため、アクティビティを終了するとすぐに破棄されると推測しています。
ListView アクティビティの私のコードは次のとおりです。
public class FormTableActivity extends Activity {
private PassengerListAdapter adapter;
Button add_passenger;
String mrzdata,ic_data,name_data;
SharedPreferences nPref;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.final_display_listview);
nPref = PreferenceManager.getDefaultSharedPreferences(this);
mrzdata = nPref.getString("MRZ", "");
name_data = nPref.getString("resultData", "");
ic_data = nPref.getString("icdata", "");
final ListView lv1 = (ListView) findViewById(R.id.custom_list);
adapter = new PassengerListAdapter(this);
adapter.add(new CustomerDetails(ic_data, name_data, mrzdata));
add_passenger = (Button) findViewById(R.id.add_user);
add_passenger.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// mrzdata = "";
// name_data = "";
// ic_data = "";
adapter.add(new CustomerDetails(ic_data, name_data, mrzdata));
}
});
lv1.setAdapter(adapter);
lv1.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> a, View v, int position, long id) {
Intent intent = new Intent(v.getContext(), FirstActivity.class);
startActivity(intent);
}
});
}