Android ViewFlipper ZOrder

Posted

技术标签:

【中文标题】Android ViewFlipper ZOrder【英文标题】: 【发布时间】:2011-06-16 03:50:09 【问题描述】:

我正在尝试使用视图翻转器为 2 个视图之间的过渡设置动画。看起来,默认情况下,ViewFlipper 将 Out 动画按 Z 顺序放置在 In 动画之上。有没有办法让传入的动画显示在传出的动画上?

谢谢

【问题讨论】:

【参考方案1】:

您可以在 android 启动器中找到此功能。由于 Android 是开源的,您可以直接复制和使用它。

使用名为 DragableSpace 的代码:http://pastebin.com/CgK8TCQS。在您的活动中,您调用:

setContentView(R.layout.main);

与:

<?xml version="1.0" encoding="utf-8"?>
<de.android.projects.DragableSpace
    xmlns:app="http://schemas.android.com/apk/res/de.android.projects"
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/space"
    android:layout_ android:layout_
    app:default_screen="1">
    <include android:id="@+id/left" layout="@layout/left_screen" />
    <include android:id="@+id/center" layout="@layout/initial_screen" />
    <include android:id="@+id/right" layout="@layout/right_screen" />
</de.android.projects.DragableSpace>

如您所见,您可以只使用 xml 为您的应用程序定义一个主屏幕;)

定义每个视图(初始、右和左) 像这样:

<LinearLayout android:id="@+id/center"
    android:layout_ android:layout_
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:background="@color/orange">
    <Button android:text="Initial Screen" android:id="@+id/Button2"
        android:layout_ android:layout_
        android:padding="10dp" android:layout_margin="10dp">
    </Button>
</LinearLayout>

有关更多信息,请查看此问题:Developing an Android Homescreen

【讨论】:

我最终采用了类似的解决方案。我只是围绕 FrameLayout 编写了自己的对象,并更具体地控制了分层。现在似乎一切正常。

以上是关于Android ViewFlipper ZOrder的主要内容,如果未能解决你的问题,请参考以下文章

Android之ViewFlipper使用详解

ViewFlipper:在视图上绘制画布

android的ViewFlipper

Android - 在 ViewFlipper 中的多个视图之间切换

Android ViewFlipper ZOrder

Android入门第31天-Android里的ViewFlipper翻转视图的使用