我有一个名为 categories_collection 的片段,应用程序最初使用此片段启动,活动标题是应用程序标题。
第1类 第2类
- 类别2.1
- 类别2.2
第3类
我所做的是当用户点击有孩子的类别时,我会使用名为 parent 的额外字段重新调用相同的 categories_collection 片段加载被点击类别的子类别。这一切都已完成并且运作良好。
我需要的是以下
我希望这能解释我的需要。
感谢。
答案 0 :(得分:0)
创建一个方法并在反向调用它:
void onBack() {
//Find all your fragments with id
Categroy_Child_Fragment fr = (Categroy_Child_Fragment) fragmentManager
.findFragmentByTag("list_items");
Final_Categories_Fragment fr1 = (Final_Categories_Fragment) fragmentManager
.findFragmentByTag("last");
Grid_View_Fragment_For_All fr2 = (Grid_View_Fragment_For_All) fragmentManager
.findFragmentByTag("grid_view");
//Then check if they are null or not and according to that remove them and settitle to actionbar
if (fr2 != null) {
fragmentManager
.beginTransaction()
.setCustomAnimations(R.anim.out_to_left, R.anim.out_to_left)
.remove(fr2).commit();
actionBar.setTitle("title");
} else if (fr1 != null) {
fragmentManager
.beginTransaction()
.setCustomAnimations(R.anim.bottom_down, R.anim.bottom_down)
.remove(fr1).commit();
actionBar.setTitle("title");
} else if (fr != null) {
fragmentManager.beginTransaction()
.setCustomAnimations(R.anim.right_out, R.anim.right_out)
.remove(fr).commit();
actionBar.setTitle(R.string.all_cat);
} else {
super.onBackPressed();
}
}
答案 1 :(得分:-1)
在每个应该改变其活动标题的片段中,我在片段的onResume()方法中放了这样的东西。
@Override
public void onResume() {
super.onResume();
((ParentActivity) getActivity()).setTitle("FragmentTitle");
}
然后你必须在你的活动中创建应该改变其标题的setTitle(字符串标题)方法。