- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在 CoordinatorLayout 中为 InputTextLayout 使用 SwipeDismissBehavior。它解雇后我需要把它拿回来。这是我如何尝试实现它的代码:
layoutDateComplete = (TextInputLayout) rootView.findViewById(R.id.layoutDateComplete);
behavior = getSwipeDismissBehavior();
CoordinatorLayout.LayoutParams params = (CoordinatorLayout.LayoutParams) layoutDateComplete.getLayoutParams();
params.setBehavior(behavior);
private SwipeDismissBehavior<TextInputLayout> getSwipeDismissBehavior() {
SwipeDismissBehavior<TextInputLayout> behavior = new SwipeDismissBehavior();
behavior.setSwipeDirection(SwipeDismissBehavior.SWIPE_DIRECTION_END_TO_START);
behavior.setListener(new SwipeDismissBehavior.OnDismissListener() {
@Override
public void onDismiss(View view) {
ViewCompat.setX(layoutDateComplete, 0);
}
@Override
public void onDragStateChanged(int state) {
}
});
return behavior;
这是第一次工作。但是在 View 不再滑动之后。解散后恢复 View 的正确方法是什么?
最佳答案
This CI Apps 的回答对我来说几乎是完美的,但在我向右滑动后, subview 没有重新出现。您可以通过调用解决此问题
MyChildView.setAlpha(1.0f);
因此这可以重置 subview :
CoordinatorLayout.LayoutParams tParams = (CoordinatorLayout.LayoutParams) tChild.getLayoutParams();
tParams.setMargins(0, 0, 0, 0);
tChild.requestLayout();
tChild.setAlpha(1.0f);
替代方法:您还可以将新的 SwipeDismissBehavior
分配给 CoordinatorLayout.LayoutParams
以重置行为。之后您仍然需要对 child 调用 setAlpha(1.0f)
。
关于android - 如何恢复使用 SwipeDismissBehavior 取消的 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34619598/
我的问题是为什么当我拖动 CardView 时我看不到任何动画。在许多示例中,存在动画。也可能有人知道为什么当我从右向左滑动时我看到从左向右的动画。 布局:
我在 CoordinatorLayout 中为 InputTextLayout 使用 SwipeDismissBehavior。它解雇后我需要把它拿回来。这是我如何尝试实现它的代码: layoutDa
我正在尝试使用设计支持库中的 SwipeDismissBehavoir。我在 RecyclerView 中列出了项目并且滑动项目必须关闭(如谷歌收件箱应用程序)。 我已经为 RecyclerView
我是一名优秀的程序员,十分优秀!