【问题标题】:Half expanded Collapsing toolbar半展开折叠工具栏
【发布时间】:2019-03-01 06:54:47
【问题描述】:

如何创建一个半展开的工具栏?类似于 WhatsApp 个人资料页面。

我尝试过scrollBy 和scrollTo,但它们似乎不起作用。

即使 dispatchNestedScroll、onNesterScroll 和 onNestedPreScroll 似乎也不起作用。

【问题讨论】:

  • 你能说得清楚一点吗?
  • 到现在为止你找到解决办法了吗?

标签: java android


【解决方案1】:

我设法通过调整这个答案:https://stackoverflow.com/a/34920495/5369519 并使用以下代码解决了这个问题:

nestedScrollView.post(() -> {
        int appBarHeight = appBar.getHeight()/2;
        nestedScrollView.startNestedScroll(ViewCompat.SCROLL_AXIS_VERTICAL);
        nestedScrollView.dispatchNestedPreScroll(0, appBarHeight, null, null);
        nestedScrollView.dispatchNestedScroll(0, 0, 0, 0, new int[]{0, -appBarHeight});
    });

这模拟了向下滚动的一半。 仅使用NestedScrollView.scrollTo() 不足以触发父级的滚动事件。

【讨论】:

  • 我早就找到了答案。但是这个答案总结了我所做的。我让 nestedScrollView 滚动 50$ 的 appbar 高度,使 appbar 一半折叠
  • 您是否也遇到过 UI 闪烁的问题?我在这里为这个问题添加了一个问题:stackoverflow.com/q/61938816/5369519
  • 完全不,这是一个很好的实现。
【解决方案2】:

为了创建折叠工具栏,CollapsingToolbarLayout 集成了 AppBarLayout、CoordinatorLayout、Toolbar 和可滚动的内容视图,例如 RecyclerView

【讨论】:

  • 是的,我知道,我的问题是将工具栏滚动到折叠状态的中间
猜你喜欢
  • 1970-01-01
  • 2016-04-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-01-19
  • 2017-05-07
  • 2023-03-09
相关资源
最近更新 更多