从底部滑入的新布局向上推动整个布局

时间:2016-10-17 13:45:03

标签: android android-layout view slider

我正在尝试创建一个屏幕,在某些操作中,需要将布局从底部滑动到高度以匹配它的长度,并使用翻译动画类型的幻灯片。

看一下屏幕示例:

Initial screen layout view 5 slides in from bottom

正如您可以看到初始屏幕布局一样,新视图5从底部滑入,用动画向上推动整个布局。

我试过这个:https://stackoverflow.com/a/19766034/1085742

使用上述链接,新视图可通过动画显示,但屏幕未向下滑动以显示新视图5.

知道怎么做!! 提前致谢。

1 个答案:

答案 0 :(得分:0)

我也对此进行了测试。显然,带有translateYY的动画不会更改布局范围。换句话说,其他视图不会向上移动。既不使用Animation也不使用Animator

一种解决方案是,如果动画视图处于支持边距的布局中,则为边距设置动画。在科特林:

val collapse = ValueAnimator.ofInt(0, -someLayoutAndViews1.height)
collapse.addUpdateListener {
    val params = someLayoutAndViews1.layoutParams as ViewGroup.MarginLayoutParams
    params.topMargin = it.animatedValue as Int
    someLayoutAndViews1.layoutParams = params
}
collapse.start()