我正在开发一个Android应用程序,它有三个非常相似的活动。我希望用户能够通过在屏幕上左右滑动来切换它们。 这就是我迄今为止管理的方式:
我遵循了post
然后我以这种方式更改了onSwipe()的方法:
@Override
public void onSwipe(int direction) {
Intent intent = new Intent();
switch (direction) {
case SimpleGestureFilter.SWIPE_RIGHT:
intent.setClass(this, TodoTodaySheet.class);
break;
case SimpleGestureFilter.SWIPE_LEFT:
intent.setClass(this, TrashSheet.class);
break;
}
startActivity(intent);
}
它有效,但我对此并不完全满意。而且,我不知道这是否是正确的做法。
我希望在切换桌面时有类似家庭应用上的行为。因此,我想要一个更平滑的动画和正确方向的被调用活动的外观,例如。在右侧滑动时从屏幕左侧开始。
任何提示?非常感谢你。
答案 0 :(得分:4)
主屏幕不会在不同视图之间滚动的活动之间滚动,如its' source code所示(第298行是屏幕更改的位置)。
如果你在活动之间切换,那么你将受到用户配置的影响。设备能够了解过渡期间显示屏会发生什么,因此您无法做很多事情。
答案 1 :(得分:1)
虽然最好将它们作为三个单独的活动,但我看到人们使用ViewFlipper在单个Activity中实现类似的效果。
这是一个链接,其中包含更多相关信息: http://www.inter-fuser.com/2009/07/android-transistions-slide-in-and-slide.html