Soru & Cevap

Android Çıkış Dialogu ...

07.05.2014 - 02:28

Girişte program logo gösteriyor ve activite pause olunca finish oluyor ve mainactivity'e yönlendiriliyor. Mainactivityi sadece şifre girişi için alert diyalog göstermesi için kullandım. şifre girince menu activitesine yönlendiriliyor ve Mainactivity'de onpause olunca finish(); oluyor. Ana menuyu de listactivity'de dizi tanımladım ve ordan hangisi seçilirse o gelsin diye ayarladım. Daha menuleri doldurmadım. Şimdi buraya kadar sorun yok. 

Menu activitesinde geri tuşuna basılınca programdan direk çıkması yerine çıkmak istediğinize eminmisiniz diye sorsun istedim. ve aşağıdaki kodu yazdım. Alertdialog bi kaç saniye gösteriliyor ve programdan tamamen çıkış yapıyordu. Bende mainactivity'nin onPause kısmındaki finish()'ini sildim bu sefer mainactivity'e yani şifre gösterme bölümüne geri döndü. Kod bir şekilde isteğim dışında işliyor. sorun neyden kaynaklanıyor bulamadım.

[code]

@Override
    public void onBackPressed() {
        super.onBackPressed();
        AlertDialog.Builder alertdialog=new AlertDialog.Builder(context);
        alertdialog.setMessage("Uygulamayı kapatmak istediğinizden emin misiniz?");
        alertdialog.setCancelable(false).setPositiveButton("Evet", new OnClickListener() {
            
            @Override
            public void onClick(DialogInterface dialog, int which) {
                System.exit(0);
                
            }
        }).setNegativeButton("Hayır", new OnClickListener() {
            
            @Override
            public void onClick(DialogInterface dialog, int which) {
                dialog.cancel();
                
            }
        });
        AlertDialog alert=alertdialog.create();
        alert.show();
    }

[/code]

111 Görüntülenme

1 Cevap

Sitedeki sorulara cevap verebilmek için giriş yapın ya da üye olun.

picture-3650-1421928561.jpg
anilsozeri
07.05.2014 - 03:47

Merhaba,

Anladığım kadarıyla geri tuşuna bastığınızda bir önceki sayfaya dönüş yapıyorsunuz ve siz sadece AlertDialog açılsın istiyorsunuz,

[code]super.onBackPressed();[/code]

Metodunu kaldırıp, tekrar dener misiniz.

Bora Serpici
07.05.2014 - 05:44
Çok teşekkür ederim orası dikkatimi çekmemişti hiç. kaldırınca onu halloldu sorun
Anıl SÖZERİ
07.05.2014 - 07:43
Rica ederim, bazen bildiğimiz ama ufak detaylar gözden kaçabiliyor :) İyi çalışmalar.