2011-06-09 23 views
13

içinde ilk hariç yığın üzerindeki her aktiviteyi bitirmek için bir iPhone uygulaması Android'e taşıyorum ve kök aktivite dışında yığını üzerinde her aktivite pop bir araç bulmak için görünmüyor gibi görünmüyor. Ben etkili bazı eylem sonrasında her bir etkinlik hakkında "bitirmek()" denirse nesnel-cAndroid

Ben

[navController popToRootViewControllerAnimated:YES]; 

bilen var

altında böyle bir şey yapsın? Bir Aktivite başlatmak istiyorsanız

+0

Sorduğun şeyin% 100'ünden emin değilim, ama işin bittiğinde bir "Etkinlik" üzerinde "bitir"() kelimesini çağırmak kesinlikle güvenli. Bu, sizi, yığınta hangi etkinlikten önce olursa olsun geri getirecektir. – dmon

+0

finish() yalnızca bir seviye gezinme kümesinden – user1872384

cevap

27

, sizin ana ekranı söylemek ve uygulamanızın yığınında diğer her Aktivite kaldırmak kullanabilirsiniz:

Intent intent = new Intent(this, MainActivity.class); 
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); // Removes other Activities from stack 
startActivity(intent); 

da MainActivity bu olay (sağlamak isterseniz başlık çubuğunda bulunan bir logo gibi), yığına başka bir örnek eklemediğinden emin olmak için FLAG_ACTIVITY_SINGLE_TOP bayrağını da ekleyebilirsiniz.

+1

bir seviye geri gönderir, yani ilk aktiviteyi yeniden oluşturur, yani "MainActivity" nin onCreate() karakterini çağırır. –