Намерение: не может перейти к следующему действию - PullRequest
0 голосов
/ 19 октября 2019

Намерение продолжает показывать то же действие и не переходит к следующему действию в соответствии со счетчиком, который хранится в базе данных реального времени Firebase. Причина, по которой существует счетчик, заключается в том, что я хочу повторно использовать действие EditPetDetail.

Я пробовал пару setFlags, removeExtra в действии EditPetDetail, finish(), глядя нафайл манифеста Android, и он по-прежнему показывает ту же схему действий после перехода в соответствующую функцию.

Что касается removeExtra, я написал код после передачи данных дополнительных функций в переменные.

Это функция внутри действия устройства.

    public void EditPet(){
        Intent intent = new Intent(this, EditPetDetail.class);
        intent.putExtra("dbDevice", deviceno);
        intent.putExtra("dbName", nameID);
        intent.putExtra("dbAge", ageID);
        intent.putExtra("dbWeight", weightID);
        intent.putExtra("dbType", typeID);
        intent.putExtra("dbCounter", counter);
        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
        startActivity(intent);
        finish();
    }

Это функция внутри действия EditPetDetail.

    public void MainPage(){
        Toast.makeText(getApplicationContext(), "123", Toast.LENGTH_SHORT).show();
        Intent intent = new Intent(this, MainActivity.class);
        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP);
        startActivity(intent);
    }

    public void PetDetail(){
        Toast.makeText(getApplicationContext(), "Nononope", Toast.LENGTH_SHORT).show();
        Intent intent = new Intent(this, pet_detail.class);
        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
        startActivity(intent);
    }

Это имена действий манифеста Android.

 <activity android:name=".EditPetDetail"></activity>
 <activity android:name=".Device">
     <intent-filter>
         <action android:name="android.intent.action.MAIN" />
         <category android:name="android.intent.category.LAUNCHER" />
     </intent-filter>
 </activity>
 <activity android:name=".pet_detail" />
 <activity android:name=".MainActivity" />

Я ожидал, что действие перейдет к различным функциям в зависимости от того, равен ли счетчик 0 или 1, но он не работал. Я также использовал тост, чтобы убедиться, что он идет к нужной функции, но в конце после анимации он просто показал мне ту же активность без полей в EditText.

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