2012-10-02 24 views
14

Fragment s ile ViewPager var. Bir düğmeye Fragment tıklandığında, bir Activity benim başlatırım. Activity numaralı telefondayken telefonumdaki geri düğmesine basarsanız, önceki ekranımın yanı sıra ViewPager'daki Fragment s cihazına geri dönersiniz.ActionBar'ın "Yukarı" düğmesinin telefonun "Geri" düğmesi gibi çalışmasını nasıl sağlayabilirim?

ben bunu benim ActionBar düğmenin "yukarı" ve sırayla etkinleştirmek istediğiniz, ben şu kodu yazdık : Artık

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.detail); 

    ActionBar actionBar = getActionBar(); 
    actionBar.setDisplayHomeAsUpEnabled(true); 
} 

düğmesi gösterilir "yukarı", ancak tıklamak beni önceki ekrana geri götürmez. "Yukarı" düğmesiyle "geri" düğmesiyle aynı şeyi beğenirim.

Bunu nasıl yapabilirim? Neyi yanlış yapıyorum?

Teşekkürler.

+1

Bir arka düğmesi olarak yukarı düğmesini kullanmamalısınız. Yukarı tuşunun amacı yukarı çıkmak ve geri dönmektir. Onu gerektiği gibi kullanmayı düşünmelisiniz. http://developer.android.com/guide/topics/ui/actionbar.html#Up –

cevap

48

En fazla düğme tıklandığında ne yapılması gerektiği uygulamak da gerekir:

@Override 
public boolean onOptionsItemSelected(MenuItem item) { 
     switch (item.getItemId()) { 
     case android.R.id.home: 
      onBackPressed(); 
      return true; 
     } 

    return super.onOptionsItemSelected(item); 
} 
+2

Bu benim sahip olduğum konu. Düğmenin otomatik olarak kablolu olmasını bekliyordum, ancak tıklandığında hiçbir şey olmadı. Yukarıdaki kodla onOptionItemSelected() öğesini geçersiz kıldıktan sonra, bir şampiyon gibi çalıştı. Teşekkürler! – proudgeekdad

İlgili konular