现在都流行FragmentTabHost布局.但是所有的fragment都是共享一个actionbar,但是我们又想给每个fragment定义自定义的标题栏.百度google了好久也没有找到解决方案.最后想到了一个笨办法.解决方法如下.如果你们有更好的方案,请留言.
第一个fragment中我定义了自定义布局的actionbar
- @Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container,
- Bundle savedInstanceState) {
- initActionBar();
- layoutView = inflater.inflate(R.layout.fragment1, null);
- return layoutView;
- }
- private void initActionBar() {
- ActionBar actionBar=getActivity().getActionBar();
- actionBar.setTitle("第一个页面");
- //查找布局文件 并且为按钮添加点击事件
- View view=View.inflate(mActivity, R.layout.action_title, null);
- actionBar.setDisplayShowCustomEnabled(true);//可设置自定义布局
- actionBar.setCustomView(view);
- }
第二个fragment把自定义布局设置为空,或者你也可以重新设置一个自定义布局的actionbar,这样就可以实现每个fragment都有不同的actionbar.
- @Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container,
- Bundle savedInstanceState) {
- initActionBar();
- layoutView = inflater.inflate(R.layout.fragment2, null);
- return layoutView;
- }
- private void initActionBar() {
- ActionBar actionBar=getActivity().getActionBar();
- actionBar.setTitle("第二个页面");
- actionBar.setCustomView(null);
- }