SORU
16 AĞUSTOS 2011, Salı


Android: Açık Aktivite Yığını

Benim uygulamada çeşitli etkinlikler düzenliyorum. ve akış çok karmaşık. Ben Çıkış uygulama naviagates Ekran giriş için tıklayın ve oradan ne zaman çıkmak kullanıcı tarafından buton (system.exit(0) aramayı iptal edebilirsiniz

ben ya da geri düğmesi çıktığınızda, sistem yığından bir aktivite :( nasıl ulaştığımda yığın Giriş ekranı tüm faaliyetleri temizleyebilir miyim? çağırır finish() çağıran pek çok aktivite vardır pratik değildir ve bazı faaliyetleri yerel kamera yürütmesini aktivite gibi aktif oldukları zaman kapalı olmalıdır.

validateuser logoutuser = new validateuser();
logoutuser.logOut();
Intent loginscreen = new Intent(homepage.this, Login2.class);
(homepage.this).finish();
loginscreen.setFlags( Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NO_HISTORY);
startActivity(loginscreen);

CEVAP
5 Mayıs 2013, Pazar


Çoğunuz yanlış. Eğer varolan bir etkinlik yığını orada ne olursa olsun, yakın ve yeni kök oluşturmak istiyorsanız, bayrak doğru ayarlayın şudur:

intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);

From the doc:

public static final int FLAG_ACTIVITY_CLEAR_TASK
Eklendi API seviyesi 11

Eğer bir Niyet geçirilen ayarlayın * *7, bu bayrak, varolan herhangi bir görev neden olacak önce temizlenecek aktivitesi ile ilişkili olabilir etkinlik başladı. Bu etkinlik yeni kök olur. aksi halde görev boş. tüm faaliyetleri tamamlandı. Bu olabilir sadece FLAG_ACTIVITY_NEW_TASK ile birlikte kullanılır.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • cyriak

    cyriak

    29 Mart 2006
  • karneson

    karneson

    23 Temmuz 2006
  • Plugable

    Plugable

    19 Mayıs 2010