-1
탐색 서랍에서 항목을 누르면. 새로운 조각을 만듭니다. 작업 표시 줄의 제목이 업데이트됩니다. 하지만 뒤로 버튼을 누르면 이전 조각이 표시되지만 ActionBar 제목은 변경되지 않습니다. 여기에 DrawerItemClickListener의 코드가 있습니다.Android MainActivity가 뒤로 버튼을 눌렀을 때 onResume의 작업 표시 줄 제목을 바꿀 수 없습니다.
활동 상태가 변경되면 아래 코드를 시도하여 제목을 업데이트했습니다. 뒤로 버튼을 누르면 actionbar Title이 defaultTitle로 설정됩니다. 다른 조건은 실행되지 않습니다. 대신 활동의 onResume()
에 제목을 설정
@Override
protected void onResume() {
super.onResume();
HomeFragment homeFragment = (HomeFragment)getSupportFragmentManager().findFragmentByTag("homeFragment");
ProductFragment productFragment = (ProductFragment)getSupportFragmentManager().findFragmentByTag("productFragment");
BillFragment billFragment = (BillFragment)getSupportFragmentManager().findFragmentByTag("billFragment");
if(homeFragment != null && homeFragment.isVisible()) {
setTitle(getString(R.string.Home));
}
else if(productFragment != null && productFragment.isVisible())
{
setTitle(getString(R.string.Products));
}
else if(billFragment != null && billFragment.isVisible()){
setTitle(getString(R.string.Bills));
}
else {
setTitle("defaultTitle");
}
}
그것을 작동합니다. 그러나 그것의 복잡한 작업. 모든 조각 이름을 한 곳에서 업데이트 할 수있는 방법이 있습니까? findFragmentByTag 및 isVisible이 작동하지 않는 이유는 무엇입니까? –
조각을 찾고 위의 설정보다 복잡하고 비용이 많이 듭니다. – arjun