Android 新布局从底部滑入,将整个布局向上推

Android 新布局从底部滑入,将整个布局向上推,android,android-layout,view,slider,Android,Android Layout,View,Slider,我正在尝试创建一个屏幕,在某些操作中,需要将布局从底部滑动到高度以匹配其长度,并使用类似于幻灯片的平移动画 请看屏幕示例: 正如您看到的初始屏幕布局一样,新视图5从底部滑入,通过动画将整个布局向上推 我试过这个: 使用上述链接,新视图可以通过动画显示,但屏幕不会向下滑动以显示新视图5 你知道怎么做吗!! 提前谢谢 我也测试了这个。显然,带有translateY或Y的动画不会更改布局边界。换句话说,其他视图不会向上移动。无论是使用动画还是动画师 一种解决方案是,如果动画视图位于支持页边距的布局中

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

请看屏幕示例:

正如您看到的初始屏幕布局一样,新视图5从底部滑入,通过动画将整个布局向上推

我试过这个:

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

你知道怎么做吗!!
提前谢谢

我也测试了这个。显然,带有
translateY
Y
的动画不会更改布局边界。换句话说,其他视图不会向上移动。无论是使用
动画
还是
动画师

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

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()

我也测试了这个。显然,带有
translateY
Y
的动画不会更改布局边界。换句话说,其他视图不会向上移动。无论是使用
动画
还是
动画师

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

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()