0
在我的Android應用程序中,我使用ListView訪問顯示其他信息和功能的特定View。 一切正常,但當我啓動Phonecall函數或打開Weblink(這2個函數在特定視圖中可用),然後通過按兩次後退按鈕回到應用程序時,ListView爲空!Android ListView在啓動外部應用程序時清除
當我使用Google Maps等內部函數或特定視圖中的任何其他內部函數時,不會發生這種情況。
我想在適配器或光標有一些問題。 我只看到adapter.notifyDataSetChanged()
,但我沒有更改任何數據。我只想讓它再次顯示。
這裏是訂單 - > ListView - >選擇一個單一的視圖 - >例如啓動一個PhoneCall - >通過後退按鈕返回單一視圖 - >通過Backbutton獲取ListView並且它是空的!
// public replacing function for ordering the views
public void replaceView(View v) {
history.add(v);
setContentView(v);
}
// function that is called when the back button is pressed, controlling the views stack
public void back() {
if (history.size() > 0) {
history.remove(history.size() - 1);
if (history.size() > 0) {
setContentView(history.get(history.size() - 1));
} else {
finish();
}
} else {
finish();
}
}
// remove site from stack and go the last view (Overriding Back Button)
@Override
public void onBackPressed() {
FrontPage.group.back();
}
這是後退按鈕是如何定義的。 onPause()
和onResume()
不工作
啊好吧,阿迪爾謝謝你的郵件,我稍後會試一試 – user1001303
這不會幫助我,因爲我沒有暫停ListView。 我從特定視圖啓動外部應用程序,而不是從ListView中刪除。 特定視圖中的所有數據都正確加載,但當我通過它返回到ListView時是空的。 這裏是訂單 - > ListView - >選擇一個單一的視圖 - >例如啓動一個PhoneCall - >通過後退返回到單一視圖 - >通過Backbutton獲取ListView並且它是空的! – user1001303
如果您開始活動(例如您的電話呼叫),則活動設置爲背景,並且您的撥號活動位於前面。在這種情況下,您的Activity的onPause()方法將被調用,並且只要關閉撥號程序,就會調用onResume(),並且您的Activity會重新出現在屏幕上。 – Thommy