0
我正在使用一個具有3個片段和activity_main的android應用程序,所有這些都在導航抽屜中列出。問題是如何通過點擊導航抽屜中的一個項目來返回活動主體。通過點擊導航抽屜中的一項來返回活動主體
的啥子,我需要的基本思想是關閉所有打開的返回到主活動
這是我的代碼片段。
if(id==R.id.taximetro){
//this is my activity_main that i need to return
trans = true;
} else if (id == R.id.factura) {
fragment=new frmFactura();
getSupportFragmentManager().beginTransaction().replace(R.id.content_main, fragment).addToBackStack(null).commit();
trans = true;
} else if (id == R.id.dispBlue) {
fragment=new frmDispositivos();
getSupportFragmentManager().beginTransaction().replace(R.id.content_main, fragment).addToBackStack(null).commit();
trans = true;
} else if (id == R.id.ayuda) {
fragment=new frmAyuda();
getSupportFragmentManager().beginTransaction().replace(R.id.content_main, fragment).addToBackStack(null).commit();
trans = true;
}
if (trans) {
getSupportFragmentManager().beginTransaction().replace(R.id.content_main, fragment).commit();
item.setCheckable(true);
getSupportActionBar().setTitle(item.getTitle());
}
//getSupportFragmentManager().beginTransaction().replace(R.id.content_main, fragment).addToBackStack(null).commit();
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
drawer.closeDrawer(GravityCompat.START);
return true;
}
請添加代碼導航抽屜適配器的任何片段.. ? –
您已經在MainActivity內...碎片在活動內。 –
另外,這裏有很多重複的代碼。例如,'if(trans){}'你執行'beginTransaction()。replace',你已經在所有其他if-else語句中做過 –