【问题标题】:Animate view off Screen in android Constraint Layoutandroid约束布局中的动画视图关闭屏幕
【发布时间】:2018-04-15 06:20:14
【问题描述】:

我在约束布局中有一个 TextView。我正在尝试以视图从顶部离开屏幕的方式制作动画。这就是我到目前为止所做的,

ConstraintSet constraintSet = new ConstraintSet();
ConstraintLayout layout = (ConstraintLayout)holder.mView;
constraintSet.clone(layout);

constraintSet.clear(R.id.txt_PackageTitle,ConstraintSet.TOP);
constraintSet.clear(R.id.txt_PackageDescription,ConstraintSet.TOP);  
constraintSet.clear(R.id.txt_PackageTitle,ConstraintSet.BOTTOM); 
constraintSet.clear(R.id.txt_PackageDescription,ConstraintSet.BOTTOM);

constraintSet.setMargin(R.id.txt_PackageTitle,ConstraintSet.TOP,-600); 
constraintSet.setMargin(R.id.txt_PackageDescription,ConstraintSet.TOP,-1200);

ChangeBounds transition = new ChangeBounds();
transition.setInterpolator(new BounceInterpolator());
transition.setDuration(600);                
TransitionManager.beginDelayedTransition(layout,transition);
                    constraintSet.applyTo(layout);

现在这段代码只是将内容移动到视图的最顶部,它不会离开视图并消失。

如何使用约束布局做到这一点?

【问题讨论】:

  • 首先让视图离开屏幕而不是删除/解除分配它。
  • 使用折叠布局得到你想要的任何东西
  • @Mikhail 怎么办?

标签: android android-animation android-constraintlayout


【解决方案1】:

不要清除 TextView 的底部约束,而是尝试将其底部约束到 ConstraintLayout 的顶部,如下所示:

constraintSet.connect (R.id.txt_PackageTitle, 
            ConstraintSet.BOTTOM, 
            PARENT_ID, 
            ConstraintSet.TOP);

现在,当视图动画时,它应该从顶部边缘滑出。

ConstraintLayout 不支持负边距,如 here 所述。

【讨论】:

    猜你喜欢
    • 2014-11-26
    • 1970-01-01
    • 1970-01-01
    • 2013-12-04
    • 2019-01-20
    • 2017-10-09
    • 2023-04-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多