【问题标题】:Change FAB position when anchor is gone锚点消失时更改 FAB 位置
【发布时间】:2015-12-14 02:55:56
【问题描述】:

我在两层之间使用 coordinatorLayout 和浮动操作按钮,如下所示:

在橙色部分,我放置了一个 NestedScrollView,以显示有关产品的大量信息,其中他的照片位于紫色部分。
当用户滚动布局并且FAB的锚点(紫色布局上的图像)消失时,FAB保持在布局的右上角。
我想做的是:当锚点消失时,FAB 转到布局的底部|右侧,以保持在屏幕顶部。
你能帮助我吗?谢谢:)

【问题讨论】:

    标签: android position android-coordinatorlayout floating-action-button


    【解决方案1】:

    当工具栏折叠时,我已使用此代码更改操作栏标题。您可以重复使用它来更改工厂位置而不是更改标题:

        ((AppBarLayout) findViewById(R.id.appbar)).addOnOffsetChangedListener(new AppBarStateChangeListener() {
            @Override
            public void onStateChanged(AppBarLayout appBarLayout, State state) {
                switch (state) {
                    case COLLAPSED:
                        getSupportActionBar().setTitle(mMatch.getUniversity().getDisplayName());
                        break;
                    case NOT_COLLAPSED:
                        getSupportActionBar().setTitle("");
                        break;
                }
            }
        });
    

    【讨论】:

    • 我不能使用它,因为我没有使用 appbarlayout。我是,但是包含图像的 viewpager 必须在其中,因此布局的滚动效果不好:\ - 感谢您的帮助 :)
    • 那么我猜你可以为你的紫色容器的高度值创建一个监听器,当它处于所需的高度时,然后为你的 FAB 设置动画
    • 这正是我不知道该怎么做。 :\
    • 好吧,没有向我们展示您的 xml,我不知道您使用哪个容器,您的布局是如何构建的,因此对您有更多帮助。 (您确实说过橙色部分是 NestedScrollView,但对紫色容器没有太多说明)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多