Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/200.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
有没有可能用ViewPager制作Android屏幕动画?_Android_Android Fragments_Android Animation_Android Viewpager - Fatal编程技术网

有没有可能用ViewPager制作Android屏幕动画?

有没有可能用ViewPager制作Android屏幕动画?,android,android-fragments,android-animation,android-viewpager,Android,Android Fragments,Android Animation,Android Viewpager,我需要制作两个带有自定义动画的屏幕,如下所述: Screen 1 Screen 2 ----------------------------- ------------------------------ | | | | | | | |

我需要制作两个带有自定义动画的屏幕,如下所述:

Screen 1 Screen 2 ----------------------------- ------------------------------ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | List 1 | List2 | ---------> | List 3 | List 4 | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ----------------------------- ------------------------------

屏幕1屏幕2 ----------------------------- ------------------------------ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |列表1 |列表2 |------->列表3 |列表4| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ----------------------------- ------------------------------

  • 用户长时间触摸列表1中的项目并从左向右滑动
  • 包含列表1的视图从左向右移动(直到屏幕结束)并淡出。显示屏幕2
是否可以使用
ViewPager
制作此动画?如果是,如何进行

我想通过
ViewPager
来实现这一点,因为我非常广泛地使用
Fragment
s,并且我已经实现了许多屏幕作为片段

如果有人需要关于动画或用户界面的澄清,请让我知道


更新:我能够在一个活动中实现这两个屏幕,我已经部分解释了这一点。我可以在一个片段中实现同样的功能。但是,能够在
ViewPager
中实现不同的
片段仍然会有帮助。

ViewPager对我来说也太过分了。除非您想在以后添加更多屏幕或其他要求。对于这些简单的屏幕,您可以使用ActivityAnimations来完成。如果将Screen1和Screen2放在单独的活动中,可以使用简单的样式设置活动的动画。您不需要编写代码,只需为您的活动定义进入和退出样式,它们就会被执行

因此,除非您有其他使用ViewPager的原因,否则您可以通过以下方法(未经测试)实现相同的效果:

Android Manifest.xml

<activity android:name=".Screen1" android:theme="@style/Animated"></activity>
<activity android:name=".Screen2"></activity>

您的themes.xml

<resources>
    <style name="Animated">
        <item name="android:windowAnimationStyle">@style/Animation.ScreenAnimation</item>
    </style>
</resources>

@style/Animation.ScreenAnimation
最后,在您的styles.xml中

<style name="Animation"></style>
<style name="Animation.ScreenAnimation" parent="android:style/Animation.Activity">
    <item name="android:activityOpenEnterAnimation">@anim/slide_in_right</item>
    <item name="android:activityOpenExitAnimation">@anim/slide_out_left</item>
    <item name="android:activityCloseEnterAnimation">@anim/slide_out_left</item>
    <item name="android:activityCloseExitAnimation">@anim/slide_in_right</item>
</style>

@动画/幻灯片在右侧
@动画/滑出左
@动画/滑出左
@动画/幻灯片在右侧

我以前曾成功地在ViewPager内部使用过垂直列表视图。在您的ViewPager中尝试水平滚动列表视图如何

我不认为这能解决问题,因为只有view1需要动画,而不是整个屏幕。也许我不完全理解这个问题,你需要一个ViewPager。祝你好运你能给我视图的xml吗,这样我就可以进行实验了?我有一个简单快速的解决方案,但我更喜欢尝试。您有4个列表视图?我没弄清楚