Android ListView没有';t(重新)填充在“上”;“后退”;
我有一个简单的Android应用程序——字典。我正在使用ListView填充主词汇表屏幕上的词典单词。如果触摸到一个单词,一个新的意图将启动一个显示该单词和定义的文字屏幕。问题是,如果我点击“后退”从wordscreen返回术语表,ListView不会填充 当从词汇表屏幕移动时,我使用onStop()关闭数据库游标,使用onRestart()打开游标并(我认为)填充ListView。它似乎不起作用 一件重要的事情是,如果在从单词屏幕返回术语表屏幕(并得到一个没有ListView的黑屏)后,我更改了ListView填充的应用程序的方向 我认为按“back”总是会导致onRestart()执行。为什么按back键不会导致ListView填充,但更改方向会导致填充Android ListView没有';t(重新)填充在“上”;“后退”;,android,Android,我有一个简单的Android应用程序——字典。我正在使用ListView填充主词汇表屏幕上的词典单词。如果触摸到一个单词,一个新的意图将启动一个显示该单词和定义的文字屏幕。问题是,如果我点击“后退”从wordscreen返回术语表,ListView不会填充 当从词汇表屏幕移动时,我使用onStop()关闭数据库游标,使用onRestart()打开游标并(我认为)填充ListView。它似乎不起作用 一件重要的事情是,如果在从单词屏幕返回术语表屏幕(并得到一个没有ListView的黑屏)后,我更改
谢谢改用onPause和onResume。更改方向会导致活动被销毁并重新启动,导航到其他活动会导致活动暂停。当您单击“上一步”时,它将恢复
请查看此概述-有相同的问题,但我的可能与您的有点不同 这对我来说很有用,在主要活动(后面有ListView的活动)中,我放了以下内容:
@Override
protected void onRestart() {
Intent intent = getIntent();
finish();
startActivity(intent);
super.onRestart();
}
可能是一个黑客和低效,但我的小应用工程
编辑:这里有一个更好的方法也适用于我:
@Override
protected void onRestart() {
this.recreate();
super.onRestart();
}
注意:我认为我的应用程序出现这种情况的原因是因为我从一个对话框开始新活动(并且必须设置标志
Intent.flag\u activity\u new\u TASK
)。但我仍在学习,可能弄错了。好的,谢谢。我已经阅读了活动生命周期文档-我想我可能已经颠倒了可见生命周期和前景生命周期。