В моем приложении для 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()
не работают