gpt4 book ai didi

android - fragment 更改后显示隐藏的工具栏

转载 作者:太空狗 更新时间:2023-10-29 16:33:47 26 4
gpt4 key购买 nike

我有以下问题:

主要 Activity :

<android.support.design.widget.CoordinatorLayout
.......>


<android.support.design.widget.AppBarLayout
......>

<android.support.v7.widget.Toolbar
app:layout_scrollFlags="scroll|enterAlways"
....../>

</android.support.design.widget.AppBarLayout>

<FrameLayout
app:layout_behavior="@string/appbar_scrolling_view_behavior"
....../>

</android.support.design.widget.CoordinatorLayout>

当 FrameLayout 包含带有 recyclerview 的 fragment 时,向上滑动 recyclerview 会向上滚动工具栏。

以下场景是问题所在:

  • 用户通过滚动 recyclerview 向上滚动工具栏
  • 用户从左侧滑动并打开抽屉
  • 然后用户导航到另一个页面
  • 另一个 fragment 显示在屏幕上,但工具栏仍然隐藏

此代码执行 fragment 更改:

fragment = .. get new fragment ..
fragmentTransaction = fragmentManager.beginTransaction();
fragmentTransaction.replace(R.id.frame, fragment);
fragmentTransaction.commit();

添加此代码没有帮助:

getSupportActionBar().show();

我也试过:

toolbar.translationY(0).start();

但没有成功。

如何以编程方式使向上滚动(不可见)的工具栏再次向下滚动?

最佳答案

我终于打电话了

appBarLayout.setExpanded(true, true)

在内部的每个 fragment 创建期间

onCreateView

每个 fragment 都继承自的抽象类的方法:

public abstract class AbstractFragmentBase extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
// other code
customAppBar.setExpanded(true, true);
// other code
}
}

关于android - fragment 更改后显示隐藏的工具栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33207926/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com