2011-07-25 14 views
18

Oyunun ana ekranından savaş ekranına ve savaş bitince arkaya gideceğim bir oyun yapıyorum. İki ekranın ayrı bir etkinlik olarak olması daha mı iyi olur yoksa setContentView (R.layout.screen2) kullanarak alabilir miyim?Android: yeni aktivitelerle ekranları değiştirmek ya da sadece içeriği değiştirmek

Etkinlik ekranının çalışmaya geçişe geçmeye çalışıyorum, ancak her denediğimde, telefonum uygulamanın yanıt vermediğini söylüyor. Aktiviteleri kullanmak daha iyi ise, o zaman bunu çözmek için zaman alacağım, ama şimdilik işleri halletmenin kolay yolunu bulacağım.

+0

Olası kopyalar [çağrılması setContentView() birden çok kez] (http://stackoverflow.com/questions/4018772/calling-setcontentview-multiple-times) –

cevap

20

Arama setiContentView() birden çok kez önerilmez. Aynı etkinlikte düzenleri arasında geçiş yapmak için, normal bir yol

Alternatif oldukça iyi ihtiyaçlarınızı uygun görünüyor ViewSwitcher, kullanabilir (Calling setContentView() multiple times ve How can i make a dynamic flipping screen(like that of iPhone) in Android bakınız) ViewFlipper veya FrameLayout kullanmaktır. http://inphamousdevelopment.wordpress.com/2010/10/11/using-a-viewswitcher-in-your-android-xml-layouts/

0

'da iyi bir ayrıntılı öğretici var Dinamik olarak bir etkinliğin görünümünü değiştirmenin en kolay yolu, hedef görünümünü etkinliğin root ViewGroup'una (FrameLayout tercihen) şişirmek olabilir. Bu sadece bir tek satır kod

inflater.inflate(R.layout.target_view,(ViewGroup)findViewById(R.id.activity_root_viewgroup), true); 
ait
İlgili konular