2016-03-26 36 views
1

Uygulamanızda, 3 parça arasında gezinmek için gezinme görünümünü içeren yalnızca bir etkinliğim var. Bir parçası gittiğinizdeActionbar Yukarı Düğme Dinleyici

Ben hamburger menü simgesi şu şekilde onNavigationItemSelected yönteminde kadar düğmeye değiştirildi olsun:

actionBarDrawerToggle.setDrawerIndicatorEnabled(false); 
getSupportActionBar().setDisplayHomeAsUpEnabled(true); 

yukarı düğmesi de görünür ancak henüz hiçbir etkisi olmaz.

Düğme tıklandığında yığındaki bir önceki parçaya gitmek istiyorum ancak bu düğmeye bir dinleyici ekleyemiyorum.

@Override 
public boolean onOptionsItemSelected(MenuItem item) { 
    int id = item.getItemId(); 
    if (id == android.R.id.home) { 
     onBackPressed(); 
     return true; 
    } 

    return super.onOptionsItemSelected(item); 
} 

ama bu asla denir:

kullanıyorum denedim. Bilmiyorum çünkü manifestoda ebeveyn aktivitem yok.

Şimdiden teşekkürler.

cevap

0

OnBackPressed'i çağırmamalısınız, parça değiştirme işlemi yöntemini kullanarak, önceki parçamla güncel parçamı değiştirdiğim fragmanlar arasında işlem yapmak için parça işlem yöntemini kullanmalısınız. kap, parçaları içeren düzendir.

FragmentTransaction transaction = getSupportFragmentManager().beginTransaction(); 
transaction.replace(R.id.fragment_container, newFragment); 
    transaction.commit(); 

Umarım, size biraz yön verir.

if (id == android.R.id.home) { 
    //put the code like above here. 
    return true; 
} 
+0

Bu benim sorum değil .. Parçalar arasında gezinmeyi biliyorum ama bu kodu nereye koymalıyım? Demek istediğim, dinleyici için hiçbir şey dinleyici ya da bir şey yok –

+0

eylem çubuğunda şimdi cevabı düzenledim. Aslında android.R.id.home, endişe duyduğunuz düğmeye karşılık gelir. – Ruag

+0

Bunu denedim, onOptionsItemSelected asla hiçbir zaman –