2013-11-15 36 views
0

我已经使用下面的代码来播放图片动画。但点击按钮后,动画无法播放。注意:我已将rotator.xml放在res/anim文件夹中。图片动画无法播放

AnimationActivity.java

package com.example.animationdemo; 

import android.os.Bundle; 
import android.app.Activity; 
import android.view.View; 
import android.view.View.OnClickListener; 
import android.view.animation.Animation; 
import android.view.animation.AnimationUtils; 
import android.widget.Button; 
import android.widget.ImageView; 

public class AnimationActivity extends Activity { 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_animation); 
     ((Button)findViewById(R.id.button1)).setOnClickListener(new OnClickListener() { 
      @Override 
      public void onClick(View arg0) { 
       final ImageView myImage = (ImageView)findViewById(R.id.imageView1); 
       final Animation myRotation = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.rotator); 
       myImage.startAnimation(myRotation); 
      } 
     }); 
    } 
} 

rotator.xml:

<rotate xmlns:android="”http://schemas.android.com/apk/res/android”"> 
android:duration="”4000”" 
android:fromdegrees="”0”" 
android:pivotx="”50%”" 
android:pivoty="”50%”" 
android:todegrees="”360”" 
android:toyscale="”0.0”" 
</rotate> 

activity_animation.xml

<RelativeLayout 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=".AnimationActivity" > 

    <ImageView 
     android:id="@+id/imageView1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginLeft="51dp" 
     android:layout_marginTop="95dp" 
     android:src="@drawable/ic_launcher" /> 

    <Button 
     android:id="@+id/button1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentBottom="true" 
     android:layout_marginBottom="109dp" 
     android:layout_toRightOf="@+id/imageView1" 
     android:text="OK" /> 

</RelativeLayout> 

AndroidManifest.xml中

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.example.animationdemo" 
    android:versionCode="1" 
    android:versionName="1.0" > 

    <uses-sdk 
     android:minSdkVersion="8" 
     android:targetSdkVersion="17" /> 

    <application 
     android:allowBackup="true" 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" 
     android:theme="@style/AppTheme" > 
     <activity 
      android:name="com.example.animationdemo.AnimationActivity" 
      android:label="@string/app_name" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
    </application> 

</manifest> 
+1

在rotator.xml中:为什么您提供的是全部“”“”提供像我提供的android:fromdegrees =“0”.. –

回答

0

问题:

这创造混乱在你的文件,因为你可能会从一些网页

解决方案复制逗号的格式用f替换您的rotator.xml ollowing代码:

<rotate xmlns:android="”http://schemas.android.com/apk/res/android”"> 
android:duration="4000" 
android:fromdegrees="0" 
android:pivotx="50%" 
android:pivoty="50%" 
android:todegrees="360" 
android:toyscale="0.0" 
</rotate> 

编辑:

变化

AnimationUtils.loadAnimation(getApplicationContext(), R.anim.rotator)

AnimationUtils.loadAnimation(AnimationActivity.this, R.anim.rotator) 
+0

我已经根据上述建议进行了更改,但仍然无效。是否有任何特殊类型的图像文件需要这个动画?为了检查目的,我在可绘制文件夹中使用了默认的ic_launcher.png图像。 – Tiger

+0

@Ketan:可能是因为上下文而面临问题,我已更新我的回答 –

+0

仍然无效。 – Tiger

0
<rotate xmlns:android="”http://schemas.android.com/apk/res/android”"> 
android:duration="4000" 
android:fromdegrees="0" 
android:pivotx="50”" 
android:pivoty="50%" 
android:todegrees="360" 
android:toyscale="0.0" 
</rotate> 

尝试放置此文件旋转器,xml

+0

我根据上述建议做了更改,但仍然无效。是否有任何特殊类型的图像文件需要这个动画?为了检查目的,我在可绘制文件夹中使用了默认的ic_launcher.png图像。 – Tiger

+0

@Ketan:你得到什么错误?发布您的logcat –

+0

没有任何错误。点击按钮后,图像翻转动画无法正常工作。 – Tiger