如果我不导入R,则会收到“无法解析ID或不是字段”的信息
(R.id.mainanim);
而且,如果我导入R,则id错误消失了,但是我得到“ main和mainanim无法解析或不是字段”。它们是我的.xml文件。
这是我的代码...也许有一个我没有看到的错误?
package com.example.carrottest2;
import android.app.Activity;
import android.graphics.drawable.AnimationDrawable;
import android.os.Bundle;
import android.widget.ImageView;
import android.R;
public class Carrottest2 extends Activity {
/** Called when the activity is first created. */
AnimationDrawable mainanimation;
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.main);
ImageView mainimage = (ImageView) findViewById(R.id.mainanim);
mainimage.setBackgroundResource(R.anim.mainanim);
mainanimation = (AnimationDrawable) mainimage.getBackground();
Main.XML:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
/>
</LinearLayout>
Mainanim.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/carrotsmile" android:duration="2000" />
<item android:drawable="@drawable/carrotblink" android:duration="2000" />
</animation-list>
最佳答案
Mainanim.xml是布局,而不是ID。要在布局中制作动画,您需要一个ImageView来将AnimationDrawable设置为背景。
关于java - Android-如果我不导入R会出错,如果我导入R会出错?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3309382/