我正在尝试根据活动中其他事件的上下文 使视图(带有一些按钮的线性视图 - R.id.playerControl
)滑入和滑出。
为此,我有一个selectMediaItem
方法,当用户分别选择或取消选择一个项目时,它应该显示或隐藏视图。
我是android中的动画新手,我无法让它工作有两个原因:
视图在动画时间之外保留在屏幕上,因此当它完成滑出时它会跳回 - 然后当请求滑入时它会跳出以滑回。
当视图消失时,屏幕上有一个永久的黑色空间。我希望视图在可见时填充空间,而
GONE
在不可见时填充空间。为此,我希望布局也随着动画而改变,以便它看起来将其他东西推开。
我的代码:
protected void selectMediaItem( ItemHandle item ) {
if (item != null) {
if (toPlay == null) {
View playerControl = findViewById(R.id.playerControl);
Animation slideInAdmination = AnimationUtils.loadAnimation(this, R.anim.slide_in);
playerControl.startAnimation(slideInAdmination);
}
}
else {
if (toPlay != null) {
View playerControl = findViewById(R.id.playerControl);
Animation slideInAdmination = AnimationUtils.loadAnimation(this, R.anim.slide_out);
playerControl.startAnimation(slideInAdmination);
}
}
toPlay = item;
}
幻灯片输入.xml
<translate
android:duration="1000"
android:fromYDelta="100%p"
android:toYDelta="0" />
</set>
有没有一种简单的方法可以将视图滑入到位并再次滑出?