我正在使用< code > Android . support . design . widget 包中的< code > floating action button :
<android.support.design.widget.FloatingActionButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentEnd="true"
android:layout_marginBottom="20dp"
android:layout_marginEnd="16dp"
android:clickable="true"
android:backgroundTint="@color/primaryColor"
android:src="@drawable/ic_search_white_24dp"
app:borderWidth="0dp"
app:elevation="6dp"
app:backgroundTint="@color/primaryColorDark"
app:rippleColor="@color/accentColor" />
是否可以将该按钮配置为在列表视图向下滚动时使用动画隐藏,并在列表视图向上滚动到顶部时再次显示它?
Irfan Raza代码的一个小改进:
recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener(){
@Override
public void onScrolled(RecyclerView recyclerView, int dx, int dy){
if (dy<0 && !fab.isShown())
fab.show();
else if(dy>0 && fab.isShown())
fab.hide();
}
@Override
public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
super.onScrollStateChanged(recyclerView, newState);
}
});
浮动操作按钮向下滚动时隐藏,向上滚动时显示。
不好意思!我迟到了多年才回答这个问题。我希望这仍然可以帮助某人。这也是我的第一个答案。
伙计们!无需实现滚动侦听器。
将以下内容添加到浮动操作按钮 xml 中:
app:layout_behavior="com.google.android.material.behavior.HideBottomViewOnScrollBehavior"
给予:
<com.google.android.material.floatingactionbutton.ExtendedFloatingActionButton
android:id="@+id/fabAddOItransferIn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|end"
android:layout_margin="@dimen/fab_margin"
android:text="@string/btn_text_transfer_in"
app:icon="@android:drawable/ic_input_add"
app:layout_behavior="com.google.android.material.behavior.HideBottomViewOnScrollBehavior"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintRight_toRightOf="parent" />
作为对我以下评论的回应,“对不起!我刚刚注意到这有一个奇怪的副作用。如果添加了app:layout_behavior="com.google.android.material.behavior.HideBottomViewOnScrollBehavior,任何快照栏都会重叠这个浮动操作按钮。☹️去掉这一行将防止重叠,浮动操作按钮将按照它在协调器布局中的预期行为。”
要解决此问题,请使用以下命令:
Snackbar.make(floating_action_button, "Some snackbar text!", BaseTransientBottomBar.LENGTH_SHORT).setAnchorView(floating_action_button).show();
那些希望使用recyclerview的人可以这样做:
recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
if (dy > 0 || dy < 0 && fab.isShown())
fab.hide();
}
@Override
public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
if (newState == RecyclerView.SCROLL_STATE_IDLE)
fab.show();
super.onScrollStateChanged(recyclerView, newState);
}
});
Floating Action Button is supported only in Material Theme Floating action buttons are used for a promoted action. They are distinguished by a circled icon floating above the UI and have motion behavi
我使用新的支持库版本23.2 在这个版本中,当我调用FloatingActionButton时,我的FloatingActionButton没有隐藏。hide()方法。 在支持库版本23.1中——它工作完美。有人能解释一下吗,有什么问题吗? 编辑 所以,在断点和调试中,我找到了具有方法隐藏()的类FloatingActionButtonIcs,这个方法应该隐藏FAB视图。但是,我发现,隐藏动画被取
我的应用程序出现了这个错误
浮动操作按钮 运行方式 过渡 大屏幕 浮动操作按钮 浮动操作按钮 浮动操作按钮适用于进阶的操作。它是漂浮在 UI 上的一个圆形图标,具有一些动态的效果,比如变形、弹出、位移等等。 浮动操作按钮有两种尺寸: 默认尺寸:适用于多数应用情况。 迷你尺寸:仅用于创建与其他屏幕元素视觉的连续性。 浮动操作按钮 迷你浮动操作按钮 浮动操作按钮应至少放在距手机边缘 16dp 或电脑/台式机边缘 24dp 的地方
我在使用Google的支持设计库中的FloatingActionButton时遇到了一些麻烦。按钮和onClickListener工作正常,但问题在于: 当我隐藏按钮和我显示它之后,按钮不直接执行onClick方法时,点击第一次,它必须点击2次工作。我没有在onClick中做任何复杂的事情,这些事情只需要为视图运行一个简单的就可以了。下面是我的代码,尽管我怀疑那里有什么问题:
问题内容: Google是否已经为该新的圆形FAB按钮发布了已定义的样式或组件,还是我应该自己实施设计? 该按钮的说明如下:Google设计| 浮动动作按钮 问题答案: 更新 :现在有一个供FAB使用的官方小部件:FloatingActionButton,有关完整信息,请参阅Gabriele Mariotti的回复。 根据Adam Powell和Chet Haase的说法,他们没有为FAB按钮创建