【发布时间】:2016-06-24 00:06:21
【问题描述】:
我使用新的支持库版本 23.2
com.android.support:design:23.2.0
在这个版本中,当我调用 FloatingActionButton.hide() 方法时,我的 FloatingActionButton 没有隐藏。
在支持库版本 23.1 中——它完美运行。 谁能解释一下,有什么问题吗?
另外,当我使用 23.2 版本时,Android Studio 预览屏幕显示一些内部错误
编辑
所以,通过断点和调试,我找到了 FloatingActionButtonIcs 类,它有方法 hide(),并且这个方法应该隐藏 FAB 视图。但是,我发现隐藏动画被取消了。为什么?我不知道:(
这是我所说的课程。 https://android.googlesource.com/platform/frameworks/support.git/+/master/design/ics/android/support/design/widget/FloatingActionButtonIcs.java?autodive=0%2F%2F%2F%2F%2F 还有方法 hide()。在匿名动画监听触发方法onAnimationCancel()
这里截图
编辑 2 是的! 我发现问题!但我不明白为什么它不起作用。我在另一个视图上启动另一个 ObjectAnimator。这是一些代码sn-p。
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_scrolling);
final FloatingActionButton mActionToogleMode = (FloatingActionButton) findViewById(R.id.fab);
final EditText editText = (EditText) findViewById(R.id.et);
final ObjectAnimator animator = ObjectAnimator.ofInt(editText, "maxLines", 250);
mActionToogleMode.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
// WHEN THAT ANIMATION START -- FAB NOT HIDDING
animator.start();
mActionToogleMode.hide(new FloatingActionButton.OnVisibilityChangedListener() {
@Override
public void onHidden(FloatingActionButton fab) {
super.onHidden(fab);
}
});
}
});
}
【问题讨论】:
-
您可以为此添加代码 sn-p 吗?
-
我只是在布局中使用 FAB(带有 layout_anchor 和 layout_anchorGravity),在我的代码中我为此 FAB 调用方法 hide()。
-
在没有任何代码的情况下很难诊断。我做了一个快速测试项目,在右下角的
CoordinatorLayout中有一个 FAB,并为它创建了一个名为hide的onClick,它运行良好。 -
另外,这是在哪个 android 版本上发生的?
-
我在三星 S4 (Android 5.0.1) 和 LG G4 (Android 6) 上测试过
标签: android android-design-library floating-action-button