1

嗨,我正在尝试为我在 android 应用程序中的启动页面设置一个带有一系列图像的帧动画作为背景,如果可能的话,我希望代码在启动时运行。我一直在编写代码,但收到一条错误消息,提示“无法解析帧动画”。

我在主要活动中实现的java代码如下:

@Override
    public void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        ImageView frameanimation = (ImageView) findViewById(R.id.frame_animation);
        AnimationDrawable frame_animation = (AnimationDrawable) frameanimation.getBackground();

        frame_animation.setVisible(true, true);
        frame_animation.start();
    }

然后,我让这段代码在我的 XML 布局文件中实现图像视图:

<ImageView
        android:id="@+id/frame_animation"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:src="@drawable/frame_animation" />

最后我将我的动画drawable保存为我的drawable文件夹中的'frame_animation.xml'。

<?xml version="1.0" encoding="utf-8"?>

<animation-list xmlns:android="http://schemas.android.com/apk/res/android" android:oneshot="false">
    <item android:drawable="@drawable/homebckgrnda1" android:duration="200" />
    <item android:drawable="@drawable/homebckgrnda2" android:duration="50" />
    <item android:drawable="@drawable/homebckgrnda3" android:duration="50" />
    <item android:drawable="@drawable/homebckgrnda4" android:duration="50" />
    <item android:drawable="@drawable/homebckgrnda5" android:duration="50" />
    <item android:drawable="@drawable/homebckgrnda6" android:duration="50" />
    <item android:drawable="@drawable/homebckgrnda7" android:duration="50" />
    <item android:drawable="@drawable/homebckgrnda8" android:duration="50" />
    <item android:drawable="@drawable/homebckgrnda9" android:duration="50" />
    <item android:drawable="@drawable/homebckgrnda10" android:duration="50" />
    <item android:drawable="@drawable/homebckgrnda11" android:duration="50" />
    <item android:drawable="@drawable/homebckgrnda12" android:duration="50" />
    <item android:drawable="@drawable/homebckgrnda13" android:duration="50" />
    <item android:drawable="@drawable/homebckgrnda14" android:duration="50" />
    <item android:drawable="@drawable/homebckgrnda15" android:duration="50" />
    <item android:drawable="@drawable/homebckgrnda16" android:duration="50" />
    <item android:drawable="@drawable/homebckgrnda17" android:duration="50" />
</animation-list>

非常感谢任何帮助,我只是无法弄清楚出了什么问题。

谢谢

4

1 回答 1

4

ImageView ( ) 的来源和 ImageView ( android:src) 的背景android:background是不同的东西。您在 XML 中设置,但试图在代码 ( )中获取背景图像。frameanimation.getBackground()

于 2012-04-16T13:10:23.683 回答