相关疑难解决方法(0)

在RecyclerView的滚动上隐藏FloatingActionButton

我想隐藏/显示FloatingActionButton滚动RecyclerView.

我的XML布局:

<android.support.design.widget.CoordinatorLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent" >

            <android.support.v7.widget.RecyclerView
                android:id="@+id/recyclerview_eventlist"
                android:layout_width="match_parent"
                android:layout_height="match_parent" />

            <android.support.design.widget.FloatingActionButton
                android:id="@+id/fab_createevent"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="@dimen/fab_margin"
                app:layout_anchor="@id/recyclerview_eventlist"
                app:layout_anchorGravity="bottom|right|end"
                app:layout_behavior="com.eventizon.behavior.ScrollAwareFABBehavior"
                android:src="@drawable/ic_edit"
                app:backgroundTint="@color/custom_color_1"
                app:borderWidth="0dp" />
        </android.support.design.widget.CoordinatorLayout>
Run Code Online (Sandbox Code Playgroud)

DrawerLayout是此布局的父布局.

    public class ScrollAwareFABBehavior extends FloatingActionButton.Behavior {


    private static final String TAG = "ScrollAwareFABBehavior";

    public ScrollAwareFABBehavior(Context context, AttributeSet attrs) {
        super();
        Log.e(TAG,"ScrollAwareFABBehavior");
    }

    @Override
    public void onNestedScroll(CoordinatorLayout coordinatorLayout,
            FloatingActionButton child, View target, int dxConsumed,
            int dyConsumed, int dxUnconsumed, int dyUnconsumed) {
        // TODO Auto-generated method stub
        super.onNestedScroll(coordinatorLayout, child, target, dxConsumed, …
Run Code Online (Sandbox Code Playgroud)

scroll floating-action-button android-recyclerview android-coordinatorlayout

40
推荐指数
5
解决办法
4万
查看次数

使用Google Design Library如何在向下滚动时隐藏FAB按钮?

谷歌已经发布了我正在使用的设计库

 compile 'com.android.support:design:22.2.1'
Run Code Online (Sandbox Code Playgroud)

但是,我无法看到任何代码示例,说明如何使用此库以及如何FAB在滚动条上设置动画.我想我可以在上面监听滚动事件ListView,然后自己动画按钮,但是这不是API(这不是这个支持库的重点).

有这样的例子吗?

android material-design floating-action-button android-design-library

39
推荐指数
4
解决办法
3万
查看次数

更新Google支持和设计库后,在滚动时无法看到浮动操作按钮

我已尝试更新com.android.support:appcompatcom.android.support:design从:25.0.1 更新到25.1.0,如下所示:

compile 'com.android.support:appcompat-v7:25.0.1'
compile 'com.android.support:design:25.0.1'
Run Code Online (Sandbox Code Playgroud)

至:

compile 'com.android.support:appcompat-v7:25.1.0'
compile 'com.android.support:design:25.1.0'
Run Code Online (Sandbox Code Playgroud)

但我发现当活动滚动时我的浮动动作按钮不再出现.我的FAB行为由以下定义:

public class MyFabBehavior extends FloatingActionButton.Behavior {

    public MyFabBehavior(Context context, AttributeSet attrs) {
        super();
    }

    @Override
    public boolean onStartNestedScroll(CoordinatorLayout coordinatorLayout,
                                       FloatingActionButton child, View directTargetChild, View target, int nestedScrollAxes) {

        // Ensure we react to vertical scrolling
        return nestedScrollAxes == ViewCompat.SCROLL_AXIS_VERTICAL
                || super.onStartNestedScroll(coordinatorLayout, child, directTargetChild, target, nestedScrollAxes);

    }

    @Override
    public void onNestedScroll(CoordinatorLayout coordinatorLayout, FloatingActionButton child,
                               View target, int dxConsumed, int dyConsumed, int dxUnconsumed, int dyUnconsumed) { …
Run Code Online (Sandbox Code Playgroud)

android android-appcompat

23
推荐指数
2
解决办法
3487
查看次数