การจัดการ backpress บกิจกรรม

0

คำถาม

ฉันต้อง 2 กิจกรรมเรียกว่าการล็อกอินและหลักในการล็อกอินกิจกรรมมันมีบล็อกรหัสนั่นทำให้นี่ functionality ว่าถ้าผมรดคลิกย้อนกลับในหลักกิจกรรมของมันจะปิดโปรแกรมแทนที่จะกลับการล็อกอินกิจกรรมแต่ผมต้องการที่จะจัดการกลับมากและบางทีอาจจะมาพร้อมกับหนึ่งกล่องโต้ตอบ"เธอจะต้องออกจากแอพฯคุณแน่ใจเหรอ?"หรืออะไรแบบนี้

Intent intent = new Intent(LoginActivity.this, MainActivity.class);
    intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | FLAG_ACTIVITY_NEW_TASK);
    startActivity(intent);

นี่รหัสบล็อกของฉันอยู่ในล็อกอิน actvity

2

คำตอบที่ดีที่สุด

0

คัดลอกและวางด้านล่างรหัสอยู่ของคุณ onBackPressed()วิธีการอยู่ MainActivity.java.

new AlertDialog.Builder(MainActivity.this)
            .setTitle("Confirm close")
            .setMessage("Are you sure want to close app")
            .setCancelable(false)
            .setPositiveButton("Yes", new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int which {
                    finish();
                }
             }).setNegativeButton("No", new DialogInterface.OnClickListener() {
                  @Override
                  public void onClick(DialogInterface dialog, int which {
                   dialog.dismiss();
                 }
             }).create().show();
2021-11-23 08:55:58

นั่นคือสิ่งที่ฉันกำลังมองหาขอบคุณขอบคุณสำหรับคำตอบ
muhammedlevent

ฉันพยายามทางแก้ของคุณแต่มันทำให้ฉันกลายเป็นแบบนี้เกิดข้อผิดพลาดอี/WindowManager:android.มุมมองWindowLeaked:กิจกรรมของ com.ตัวอย่างrtets.ส่วนติดต่อผู้ใช้ขอ.กิจกรรมMainActivity มีปล่องหน้าต่าง DecorView@ec13922[MainActivity นั้นเป็นในตอนแรกเพิ่มเข้ามาที่นี่
muhammedlevent
0

คุณสามารถจัดการอยู่ใน onBackPressed ถ้าเป็นของผู้ใช้อิน:

override fun onBackPressed() {
        if(!user.isLoggedIn()){
            val intent = Intent(this@LoginActivity, MainActivity::class.java)
            intent.flags = Intent.FLAG_ACTIVITY_CLEAR_TOP
            startActivity(intent)
            finish()
        }else{
            //Show alert
        }
    }
2021-11-23 08:42:43

ในภาษาอื่นๆ

หน้านี้อยู่ในภาษาอื่นๆ

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................