Android ListView очищается при запуске внешнего приложения - PullRequest
0 голосов
/ 18 октября 2011

В моем приложении для Android я использую ListView, чтобы перейти к конкретному представлению, которое показывает дополнительную информацию и функции. Все работает хорошо, но когда я запускаю функцию Phonecall или открываю веб-ссылку (эти 2 функции доступны в конкретном представлении), а затем возвращаюсь в приложение, дважды нажав кнопку возврата, ListView становится пустым!

Этого не происходит, когда я использую внутреннюю функцию, такую ​​как Google Maps, или любую другую внутреннюю функцию из определенного представления.

Я думаю, что есть некоторые проблемы с адаптером или курсором. Я видел только adapter.notifyDataSetChanged(), но я не изменяю данные. Я просто хочу, чтобы это снова показали.

Вот Порядок -> ListView -> выберите Single View -> например, запустите PhoneCall -> вернитесь к Single View через Backbutton -> вернитесь, чтобы получить ListView через Backbutton, и он пуст!


// 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() не работают

1 Ответ

0 голосов
/ 18 октября 2011

Вы должны сохранить свой ListView в onPause и перестроить его в onResume. Оба метода должны быть переопределены в вашем Activity классе.

...