Запуск нового действия также запускает метод onPause - PullRequest
0 голосов
/ 19 февраля 2012

У меня есть просмотр списка, который говорит «детали», и когда пользователь щелкает один из элементов, я получаю позицию этих определенных «деталей» и выводю пользователя на экран редактирования с динамическими данными, загруженными в определенные переменные.

Когда я запускаю операцию с деталями, logcat сообщает мне, что была запущена и операция с деталями, и моя работа с основным меню, в результате чего мой пользователь попадает в главное меню.Это, очевидно, не оставляет никого счастливым, и я хотел бы знать, может ли кто-нибудь оказать мне некоторую помощь относительно того, почему это происходит?

Код:

DetailsButton:

    removeLi.setOnItemClickListener(new OnItemClickListener() {

            public void onItemClick(AdapterView<?> aV, View v, int pos,
                    long arg3) {
                // TODO Auto-generated method stub
                information.open();
                information.delete(pos + 1);
                information.close();

                rowAdapter.notifyDataSetChanged();
                whenAdapter.notifyDataSetChanged();
                postedAdapter.notifyDataSetChanged();
                detailsAdapter.notifyDataSetChanged();
                editAdapter.notifyDataSetChanged();
                removeAdapter.notifyDataSetChanged();

                Dialog sucDeleted = new Dialog(ManageAppointment.this);
                sucDeleted.setTitle("Sucesfully deleted");
                TextView tvDintWorked = new TextView(ManageAppointment.this);
                tvDintWorked.setText("The appointment at position:" + pos
                        + " was sucesfully deleted");
                sucDeleted.setContentView(tvDintWorked);
                sucDeleted.show();

            }
        });

Метод onPause:

@Override
protected void onPause() { // TODO Auto-generated method stub
    super.onPause();
    Intent main = new Intent("com.DCWebMakers.Vairon.MAINMENU");
    startActivity(main);
}

Спасибо.

Ответы [ 2 ]

3 голосов
/ 19 февраля 2012

onPause () всегда вызывается для каждого действия, если запущено другое действие, и заменяет его, как указано здесь .Если вы хотите переопределить поведение кнопки «Назад» для запуска определенного действия, попробуйте переопределить метод onBackPressed () вместо добавления кода в onPause ().

0 голосов
/ 19 февраля 2012

Это так, как задумано. Метод onPause() запускается каждый раз, когда другое действие охватывает текущее действие, даже если оно ваше. См. документацию по деятельности . Реальный вопрос в том, почему вы начинаете основную деятельность в onPause()?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...