SORU
29 HAZİRAN 2010, Salı


&Quot Geçersiz kılmak İçin Nasıl Android;Geri" değil't Tamamlamak düğmesi() benim Etkinlik?

Ben şu anda görüntülenen bir Bildirim geldiğinde, Bildirim çubuğunda görüntülenen alacağınız bir Aktivite var.

Bu Kullanıcı presler ev ve Etkinliğini arka plana itti geldiğinde Bildirim ile faaliyete geri alabilmek.

Sorun ortaya çıktığında bir Kullanıcı presler geri düğmesi, benim Aktivite olur yok ama uyarı olarak kaldığı istiyorum kullanıcı yapabilmek için geri tuşuna basın ama hala yapacak Aktivite yoluyla Bildirim. Ancak bir KULLANICI bunu denediğinde yeni bir faaliyet başlatmak için çabalamak yerine, eskisinin geri getiren onun gibi Boş öneriler alın.

Yani aslında Geri düğmesi ana düğme ile tam olarak aynı hareket etmek istiyorum ve şimdiye kadar çalıştık.


        @Override
        public boolean onKeyDown(int keyCode, KeyEvent event)  {
            if (Integer.parseInt(android.os.Build.VERSION.SDK) < 5
                    && keyCode == KeyEvent.KEYCODE_BACK
                    && event.getRepeatCount() == 0) {
                Log.d("CDA", "onKeyDown Called");
                onBackPressed();
            }

            return super.onKeyDown(keyCode, event);
        }

        public void onBackPressed() {
            Log.d("CDA", "onBackPressed Called");
            Intent setIntent = new Intent(Intent.ACTION_MAIN);
            setIntent.addCategory(Intent.CATEGORY_HOME);
            setIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
            startActivity(setIntent); 

            return;
        }   

Yukarıdaki kodu hala benim Etkinlik tahrip etmek gibi görünüyor ancak Nasıl Geri düğmesine basıldığında, yok olma benim Etkinlik durdurabilirim?

CEVAP
29 HAZİRAN 2010, Salı


KEY_BACK varsa, anahtar dinleyici kaldırmak veya doğru dönün

sadece şu geri tuşu (süper çağrı emin olun) yakalamak gerekir

Ayrıca, eğer bir planın bir hizmet çalıştırın arka planda, emin olun bakmak startForeground() ve emin olmak için sürekli bir bildirim veya android öldürecek hizmetiniz ihtiyacı için boş bellek

@Override
public void onBackPressed() {
   Log.d("CDA", "onBackPressed Called");
   Intent setIntent = new Intent(Intent.ACTION_MAIN);
   setIntent.addCategory(Intent.CATEGORY_HOME);
   setIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
   startActivity(setIntent);
}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BachelorsPadTv

    BachelorsPad

    17 Ocak 2012
  • BlackmillMusic

    BlackmillMus

    3 Kasım 2010
  • Jonathan Morrison

    Jonathan Mor

    24 Mart 2010