我有一个应用程序,我使用SimpleGestureFilter.java,它做的是在刷卡上调用正确的功能(左右双击......等)这里是代码的一部分
@Override
public boolean dispatchTouchEvent(MotionEvent me){
// Call onTouchEvent of SimpleGestureFilter class
this.detector.onTouchEvent(me);
return super.dispatchTouchEvent(me);
}
public void onSwipe(int direction) {
String str = "";
switch (direction) {
case SimpleGestureFilter.SWIPE_RIGHT : minusOne(); str = "Swipe Right";
break;
case SimpleGestureFilter.SWIPE_LEFT : plusOne(); str = "Swipe Left";
break;
}
}
所以我想在plusOne()被解析时或者其他一些函数执行某些操作并且它在同一个MainActivity.java类上提交意图时,我试图在事件恰好看起来像一个书页幻灯片,在屏幕之间进行一些过渡,它只是一个MainActivity屏幕
Intent i = new Intent(this,MainActivity.class);
i.putExtra(DBAdapter.KEY_pk_ymd, Integer.parseInt(dt));
startActivityForResult(i,ACTIVITY_EDIT);
答案 0 :(得分:4)
使用:push_left_in.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_interpolator">
<translate android:fromXDelta="100%p" android:toXDelta="0" android:duration="300"/>
<alpha android:fromAlpha="0.0" android:toAlpha="1.0" android:duration="300" />
和push_left_out.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_interpolator">
<translate android:fromXDelta="0" android:toXDelta="-100%p" android:duration="300"/>
<alpha android:fromAlpha="1.0" android:toAlpha="0.0" android:duration="300" />
</set>
所有xml都位于res / anim中,并且像这样被调用
Intent i = new Intent(this,MainActivity.class);
startActivityForResult(i,ACTIVITY_EDIT);
overridePendingTransition(R.anim.push_left_in,R.anim.push_left_out);
答案 1 :(得分:1)
您可以在此处使用此Google代码:
https://code.google.com/p/android-3d-flip-view-transition
导入后,您只需使用:
AnimationFactory.flipTransition(viewFlipper, FlipDirection.LEFT_RIGHT);
你的好处,简单有效的lib。
编辑:
你的另一个选择是在你的意图中包含一个动画调用,但翻页会很难做到这一点。可以实现简单的滑动或滑动样式动画:
overridePendingTransition(int enterAnim,int exitAnim)
push_right_in.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromXDelta="-100%p" android:toXDelta="0" android:duration="@android:integer/config_shortAnimTime"/>
<alpha android:fromAlpha="0.0" android:toAlpha="1.0" android:duration="@android:integer/config_shortAnimTime" />
</set>
push_right_out.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromXDelta="0" android:toXDelta="100%p" android:duration="@android:integer/config_shortAnimTime"/>
<alpha android:fromAlpha="1.0" android:toAlpha="0.0" android:duration="@android:integer/config_shortAnimTime" />
</set>
这比你追求的更接近吗?我在第一个答案中发布的lib非常容易使用并且确实产生了很好的效果。