Повторное использование старых намерений Android - PullRequest
0 голосов
/ 02 апреля 2012

Итак, у меня на двух моих формах есть кнопка «Назад» и «Далее», на первой форме, когда вы нажимаете «Далее», она загружает вторую форму, теперь, если вы нажмете кнопку «Назад» на второй форме, она загружает первую форму, однако теперьЕсть две цели для одной и той же формы.Как предотвратить это?

первая кнопка запуска формы:

  final Button start = (Button) findViewById(R.id.start);
    start.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
            Intent i= new Intent(getApplicationContext(), step_1_to_4.class);
            startActivity(i);



        }
        });

Вторая кнопка возврата формы выглядит следующим образом:

    final Button back = (Button) findViewById(R.id.step1_back_button);
    back.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {

            Intent i= new Intent(getApplicationContext(), HKA_manual_Calibration_v2_no_tabsActivity.class);
            startActivity(i);
        }
    });

, поэтому, когда пользователь переходитназад и вперед между этими двумя действиями это приводит к созданию нескольких действий.

Ответы [ 2 ]

0 голосов
/ 02 апреля 2012

андроида: launchMode = "SingleInstance"

добавьте вышеуказанную строку в файл манифеста для действий.

0 голосов
/ 02 апреля 2012

Из приведенного выше кода в вашем случае будет только одно намерение, то есть начать действие для второй формы.Когда вы нажимаете клавишу назад , она фактически возобновляет ваше предыдущее действие, чье намерение уже существует (существует в этом задании) и может быть получено с помощью getIntent()

...