ListViewは、アクティビティが初めて実行されたときに作成されます。アクティビティーを再作成した後、リストには値が入力されません。私がアプリから戻ってもう一度開くと、正しく動作しません。しかし、私はそれをタスクメニューから削除し、再び開くと、それは動作します。また、ArrayAdapterはonResumeとonImagesRetrievedで異なるカウント(getCount)を持ちます。なぜこれが起こっているのかについてのアイデアはありますか?アクティビティが再起動された後にAndroid ListViewが生成されない
public class GalleryActivity extends Activity implements ImagesDatabaseHelper.ImageDatabaseCallbacks {
private static final int NUMEBR_OF_IMAGES = 10;
private ArrayAdapter arrayAdapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_gallery);
arrayAdapter = new ArrayAdapter(this, android.R.layout.simple_list_item_1, new ArrayList());
((ListView)findViewById(R.id.lv_titles)).setAdapter(arrayAdapter);
}
@Override
protected void onResume() {
super.onResume();
ImagesDatabaseHelper.getInstance(this, NUMEBR_OF_IMAGES).retrieveImages();
}
@Override
public void onImagesRetrieved(List<Image> images) {
Toast.makeText(this, "Successfully got " + images.size() + " images", Toast.LENGTH_LONG).show();
arrayAdapter.clear();
arrayAdapter.addAll(images);
arrayAdapter.notifyDataSetChanged();
}
}
データが表示されなくても、毎回「トースト」が表示されますか? – Bills
はい、毎回トーストが表示されます。 – swift