【发布时间】:2014-11-13 15:07:24
【问题描述】:
我正在尝试 android 中的动画。我只想旋转图像视图而不干扰它下面的水平滚动视图。另外,当动画完成后,我想开始一个新的活动。我不想使用片段,因为我想在翻转完成后开始一个新活动。到目前为止,该应用程序可以正常工作,但不流畅,并且水平滚动视图也会旋转。此外,它似乎没有旋转。当我将 alpha 属性放在 rotate_in.xml 中时,它会给出“子元素必须格式正确”的错误,请帮助。 以下是源代码:
布局1:
LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.example.fromscratch.MainActivity" >
<ImageView
android:layout_width="250dp"
android:layout_height="250dp"
android:src="@drawable/you"
android:id="@+id/you" >
</ImageView>
<HorizontalScrollView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginBottom="10dp">
<ImageButton
android:id="@+id/date"
android:layout_width="100dip"
android:layout_height="100dip"
android:layout_marginTop="26dp"
android:scaleType="fitXY"
android:src="@drawable/date" />
<ImageButton
android:id="@+id/mission"
android:layout_width="100dip"
android:layout_height="100dip"
android:layout_marginTop="26dp"
android:scaleType="fitXY"
android:src="@drawable/mission" />
<ImageButton
android:id="@+id/youu"
android:layout_width="100dip"
android:layout_height="100dip"
android:layout_marginTop="26dp"
android:scaleType="fitXY"
android:src="@drawable/you" />
<ImageButton
android:id="@+id/competitionn"
android:layout_width="100dip"
android:layout_height="100dip"
android:layout_marginTop="26dp"
android:scaleType="fitXY"
android:src="@drawable/competition" />
</LinearLayout>
</HorizontalScrollView>
</LinearLayout>
布局2:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.example.fromscratch.MainActivity"
android:orientation="vertical">
<ImageView
android:layout_width="250dp"
android:layout_height="250dp"
android:src="@drawable/competition"
android:id="@+id/competition" >
</ImageView>
<HorizontalScrollView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginBottom="10dp">
<ImageButton
android:id="@+id/date"
android:layout_width="100dip"
android:layout_height="100dip"
android:layout_marginTop="26dp"
android:scaleType="fitXY"
android:src="@drawable/date" />
<ImageButton
android:id="@+id/mission"
android:layout_width="100dip"
android:layout_height="100dip"
android:layout_marginTop="26dp"
android:scaleType="fitXY"
android:src="@drawable/mission" />
<ImageButton
android:id="@+id/you"
android:layout_width="100dip"
android:layout_height="100dip"
android:layout_marginTop="26dp"
android:scaleType="fitXY"
android:src="@drawable/you" />
<ImageButton
android:id="@+id/competitionn"
android:layout_width="100dip"
android:layout_height="100dip"
android:layout_marginTop="26dp"
android:scaleType="fitXY"
android:src="@drawable/competition" />
</LinearLayout>
</HorizontalScrollView>
</LinearLayout>
rotate_in.xml:
<?xml version="1.0" encoding="utf-8"?>
<scale
xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:anim/accelerate_interpolator"
android:duration="200"
android:fromXScale="0.0"
android:fromYScale="0.90"
android:pivotX="50%"
android:pivotY="50%"
android:startOffset="500"
android:toXScale="1.0"
android:toYScale="1.0" />
rotate_out.xml
<?xml version="1.0" encoding="utf-8"?>
<scale
xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="300"
android:fromXScale="1.0"
android:fromYScale="1.0"
android:interpolator="@android:anim/accelerate_decelerate_interpolator"
android:pivotX="50%"
android:pivotY="50%"
android:toXScale="0.0"
android:toYScale="0.90" />
我在第二个活动中使用它 overridePendingTransition(R.anim.rotate_in, R.anim.rotate_out);
应用程序在使用淡入和淡出动画时运行良好。请帮忙。
【问题讨论】:
标签: android xml android-animation