代码之家  ›  专栏  ›  技术社区  ›  Htoo Aung Hlaing

我可以在导航抽屉的片段中使用CollapsingToolbarLayout吗

  •  6
  • Htoo Aung Hlaing  · 技术社区  · 11 年前

    我可以在导航抽屉的片段中使用CollapsingToolbarLayout吗。 我尽力了 this sample 来自AndroidHive。 我希望“消息”可折叠到NestedScrollView。在活动中是可以的,但它在片段中。CollapsingToolbarLayout不能悬停在原始工具栏上。但我想尝试的可能是错误的模式。请告诉我情况如何。

    1 回复  |  直到 11 年前
        1
  •  8
  •   Gowtham Lennart Regebro    8 年前

    我正在删除片段上的实际活动工具栏 onResume 并重新启用片段上的活动工具栏 onStop .

    请在片段中添加以下代码:

    @Nullable
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        ...
        setHasOptionsMenu(true);
        ...
    }
    
    @Override
    public void onStop() {
        super.onStop();
        final Toolbar toolbar = (Toolbar) getActivity().findViewById(R.id.app_bar);
        getActivity().findViewById(R.id.app_bar).setVisibility(View.VISIBLE);
        ((AppCompatActivity) getActivity()).setSupportActionBar(toolbar);
        ((AppCompatActivity) getActivity()).getSupportActionBar().setHomeButtonEnabled(true);
        ((AppCompatActivity) getActivity()).getSupportActionBar().setDisplayHomeAsUpEnabled(true);
    }
    

    和

    @Override
    public void onResume() {
        super.onResume();
        getActivity().findViewById(R.id.app_bar).setVisibility(View.GONE);
        final Toolbar toolbar = (Toolbar) rootView.findViewById(R.id.toolbar);
        ((AppCompatActivity) getActivity()).setSupportActionBar(toolbar);
        ((AppCompatActivity) getActivity()).getSupportActionBar().setHomeButtonEnabled(true);
        ((AppCompatActivity) getActivity()).getSupportActionBar().setDisplayHomeAsUpEnabled(true);
    }