android 绝对翻译动画 - 从右到左和从左到右
android translate animation absolute - from right to left and left to right
我有这 2 个文本视图。
http://cl.ly/image/2S0o2O1x470r
注册并登录。
在他们身后有一个灰色背景的视图。
我想要 运行 一个动画,当你按下那个按钮时,灰色视图
随查看寻呼机内容移动到按钮。
当我像这样翻译 xml 时 :
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="500"
android:fromXDelta="0%"
android:toXDelta="100%" >
</translate>
动画进行得很顺利,但当它结束时又回到原来的位置。
如何固定它?
以前从未做过绝对动画,也找不到任何有用的东西
关于那个问题。
有
我解决了它,我会 post 我的解决方案以防其他人遇到这个问题。
我用代码而不是 xml,代码:
private void rightAnimation() {
//measures the layout width so the button knows how much to move.
int xOffset = signUpLoginLayout.getMeasuredWidth() / 2;
//the animation - xOffset / 2 is how much I want to move right on the Xline.
TranslateAnimation moveAnim = new TranslateAnimation(0, xOffset, 0, 0);
moveAnim.setDuration(500);
moveAnim.setFillAfter(true);
leftSignUpAnimation.startAnimation(moveAnim);
moveAnim.setAnimationListener(new Animation.AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
//that's to move the viewpager to the desired location.
pager.setCurrentItem(0, true);
}
@Override
public void onAnimationEnd(Animation animation) {
}
@Override
public void onAnimationRepeat(Animation animation) {
}
});
用同样的方法向左移动只是切换了动画
从 (0, xOffset, 0, 0) 到 (xOffset, 0, 0, 0)
希望这对某人有所帮助。
祝你好运:)
我有这 2 个文本视图。
http://cl.ly/image/2S0o2O1x470r
注册并登录。 在他们身后有一个灰色背景的视图。 我想要 运行 一个动画,当你按下那个按钮时,灰色视图 随查看寻呼机内容移动到按钮。
当我像这样翻译 xml 时 :
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="500"
android:fromXDelta="0%"
android:toXDelta="100%" >
</translate>
动画进行得很顺利,但当它结束时又回到原来的位置。
如何固定它?
以前从未做过绝对动画,也找不到任何有用的东西 关于那个问题。
有
我解决了它,我会 post 我的解决方案以防其他人遇到这个问题。
我用代码而不是 xml,代码:
private void rightAnimation() {
//measures the layout width so the button knows how much to move.
int xOffset = signUpLoginLayout.getMeasuredWidth() / 2;
//the animation - xOffset / 2 is how much I want to move right on the Xline.
TranslateAnimation moveAnim = new TranslateAnimation(0, xOffset, 0, 0);
moveAnim.setDuration(500);
moveAnim.setFillAfter(true);
leftSignUpAnimation.startAnimation(moveAnim);
moveAnim.setAnimationListener(new Animation.AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
//that's to move the viewpager to the desired location.
pager.setCurrentItem(0, true);
}
@Override
public void onAnimationEnd(Animation animation) {
}
@Override
public void onAnimationRepeat(Animation animation) {
}
});
用同样的方法向左移动只是切换了动画 从 (0, xOffset, 0, 0) 到 (xOffset, 0, 0, 0)
希望这对某人有所帮助。
祝你好运:)