Android java如何让动画图像向左移动并停留在那里?
基本上,当你点击图像时,图像会向右移动,但是当动画完成后,它会回到原来的位置吗?如何使其在动画中的结束点停止?这是我的密码Android java如何让动画图像向左移动并停留在那里?,java,android,Java,Android,基本上,当你点击图像时,图像会向右移动,但是当动画完成后,它会回到原来的位置吗?如何使其在动画中的结束点停止?这是我的密码 <?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <translate android:fromXDelta="0%" android:toXDelta="70%" an
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromXDelta="0%" android:toXDelta="70%" android:duration="1000"/>
</set>
这是它向右滑动的代码使用
动画
setFillAfter(true)
方法保存动画
AlphaAnimation alpha = new AlphaAnimation(1, 0);
alpha.setDuration(600);
alpha.setFillAfter(true);
然后
在您的情况下,代码应该是
public void sideBar()
{
ImageView sidebar = (ImageView)findViewById(R.id.sidebar);
mSlideInRight = AnimationUtils.loadAnimation(this, R.anim.slide_in_right);
mSlideInRight.setFillAfter(true);
sidebar.startAnimation(mSlideInRight);
}
你能给我一个例子,说明我如何将其添加到我的代码中吗?是的,在你的例子中
mslidinright.setFillAfter(true)
;就在侧栏开始动画之前(mSlideInRight)
;嗯,我添加了它,并用这样的代码对它进行了测试:我没有做向右移动的动画,而是淡出了。我给出了淡出的代码。通过AnimationUtils
加载动画后,您应该只使用一行添加的旧代码-mSlideInRight.setFillAfter(true)
确保未调用sidebar()
两次。做一些调试和实验。
someView.startAnimation(alpha);
public void sideBar()
{
ImageView sidebar = (ImageView)findViewById(R.id.sidebar);
mSlideInRight = AnimationUtils.loadAnimation(this, R.anim.slide_in_right);
mSlideInRight.setFillAfter(true);
sidebar.startAnimation(mSlideInRight);
}