Kembali ke aktivitas sebelumnya memiliki kotak dialog di android

Saya memiliki aplikasi android dengan 2 layar. Dan saya mengatur kotak dialog saat berpindah dari layar pertama ke layar kedua. Kode saya adalah:

@Override
        protected void onPreExecute() {
            super.onPreExecute();
            pDialog = new ProgressDialog(MainActivity.this);
            pDialog.setTitle("Please wait");
            pDialog.setMessage("Authenticating User");
            pDialog.setIndeterminate(false);
            pDialog.setCancelable(true);
            pDialog.setCanceledOnTouchOutside(false);
            pDialog.show();

            Intent it = new Intent(MainActivity.this, SecondActivity.class);
            it.putExtra("invoiceid", invc);
            it.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK); 
            startActivity(it);
            //finish();

        }

Saat menjalankan kode, Saat mengklik tombol kembali, kotak dialog akan ditampilkan dan menuju ke layar pertama. Sekarang saya ingin menampilkan layar pertama langsung dengan mengklik tombol kembali tanpa menampilkan kotak dialog. Bagaimana mungkin?

Dan bagaimana cara menghapus layar pertama jika ada kotak teks di dalamnya?


person Rose    schedule 02.03.2016    source sumber
comment
Coba pDialog.dismiss() sebelum startActivity(it);   -  person Rakshit Nawani    schedule 02.03.2016
comment
Tutup dialog Anda di onPostExecute lalu mulai aktivitas Anda. Jangan mulai di onPreExecute.   -  person VoidExplorer    schedule 02.03.2016
comment
Sudahkah Anda menentukan induk hierarki untuk aktivitas kedua?   -  person Neeraj    schedule 02.03.2016
comment
@Rakshit Nawani : Terima kasih... Ini berfungsi dengan baik. Saya punya satu pertanyaan lagi..... Bagaimana cara menghapus layar pertama jika ada kotak teks semut?   -  person Rose    schedule 02.03.2016
comment
@Rose: senang membantu, posting jawaban saya di bawah, terima dan beri suara positif jika membantu.   -  person Rakshit Nawani    schedule 02.03.2016


Jawaban (5)


Coba pDialog.dismiss() sebelum startActivity(it);
Jika Anda ingin menghapus data apa pun di Kotak Teks mana pun di Kumpulan Aktivitas pertama, tekskan ke EditTeks tersebut "" sebelum memindahkan aktivitas apa pun, data di EditText akan dihapus.

person Rakshit Nawani    schedule 02.03.2016

penghentian kekosongan publik ()

Ditambahkan di API level 1. Tutup dialog, hapus dialog tersebut dari layar. Metode ini dapat dijalankan dengan aman dari thread mana pun. Perhatikan bahwa Anda tidak boleh mengganti metode ini untuk melakukan pembersihan ketika dialog ditutup.

        pDialog.dismiss();
        Intent it = new Intent(MainActivity.this, SecondActivity.class);
        it.putExtra("invoiceid", invc);
        it.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK); 
        startActivity(it);
person IntelliJ Amiya    schedule 02.03.2016

Coba gunakan

        Intent it = new Intent(MainActivity.this, SecondActivity.class);
        it.putExtra("invoiceid", invc);
        it.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK); 
        pDialog.dismiss();
        startActivity(it);
person Veeresh Charantimath    schedule 02.03.2016
comment
'Maksud.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK' mengapa Anda memerlukannya? - person Neeraj; 02.03.2016

coba ini

 pDialog.dismiss() before startActivity(it)
person saeed    schedule 02.03.2016

Anda harus mengabaikan dialogBox sebelum memindahkannya ke Aktivitas lain. Tambahkan maksud Anda di onPostExecute

pDialog.dismiss();

Kemudian sebutkan niat Anda

Intent it = new Intent(MainActivity.this, SecondActivity.class);
            it.putExtra("invoiceid", invc);
            it.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK); 
            startActivity(it);
person Anuj Sharma    schedule 02.03.2016