活动之间的滑块动画

时间:2013-09-02 07:35:13

标签: android android-layout animation android-animation

我必须在两个活动之间实现一个简单的动画:我已经实现了一些简单的动画,但最后一个更难实现。

动画应如下所示:活动A(在屏幕上)从YDelta = 0滑动到Ydelta = -100%。与此同时,活动B已经处于最终位置(它不会移动,不需要翻译......)并且它会慢慢显示......就像一个正确的......

我很害怕:

overridePendingTransition(R.anim.no_anim, R.anim.slide_to_top);

no_anim:

<translate android:fromYDelta="0" android:toYDelta="0" android:duration="2000"/> 

slide_to_top:

 <translate android:fromYDelta="0" android:toYDelta="100%p" android:duration="2000"/> 

结果不正确:活动B(绑定到no_anim)立即显示在屏幕上,因此活动A只是消失...

如何解决我的问题?

TY和BR!

2 个答案:

答案 0 :(得分:2)

我遇到了类似的问题,然后我发现(作为css中的z-order)动画有一个非常好的参数:android:zAdjustment“允许调整<在动画“的持续时间内动画内容的强> Z排序。您将能够显示上一个活动背后的下一个活动。您有3个可能的值:

  
      
  • 正常:默认值等于 0
  •   
  • 底部显示在 -1 ;价值落后
  •   
  • 顶部: 1 的值;显示在顶部
  •   

因此,slide_to_top.xml

<translate 
    android:zAdjustment="top"
    android:fromYDelta="0"
    android:toYDelta="100%p"
    android:duration="2000" />  

此外,您无需设置no_anim动画,因为您的下一个活动的默认值为0,之前的活动将为+1。刚刚经过测试,它就像一个魅力,真的!然后,方法:

overridePendingTransition(0,R.anim.slide_to_top);  

我真的希望你找到解决这个问题的方法。但是,此解决方案可能会帮助需要与您相同行为的人。

答案 1 :(得分:0)

查看我的帖子Android slide-in slide-out for activity

您需要为从...到...的两个视图从左到右创建一个动画。