当代码正确时我有这个问题,但它给了我红线错误! 任何人都可以帮助我。
Main.java
package com.example.sout;
import android.content.DialogInterface;
import android.graphics.drawable.AnimationDrawable;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.MotionEvent;
import android.view.View;
import
~
import android.widget.ImageView;
public class Main extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
ImageView iv = (ImageView) findViewById(R.id.img1);
iv.setBackgroundResource (R.anim.animation);
~~~~~~~~~~~~~~~~
iv.setOnClickListener(new OnClickListener());
~~~~~~~~~~~~~~~ ~
}
in(注意上面的~
个字符):
iv.setBackgroundResource (R.anim.animation);
iv.setOnClickListener(new OnClickListener());
setBackgroundResource
和setOnClickListener
也是红色。
答案 0 :(得分:3)
iv.setBackgroundResource (R.anim.animation);
中的错误是因为该方法将整数作为参数。因此将其更改为以下内容,
iv.setBackgroundResource (R.drawable.image1); //image1 is a drawable which is inside your drawable folder.
并出现第二个错误,因为您尚未导入所需的包,并且未覆盖所需的方法。将其更改为以下内容,
iv.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
//do your task here
}
});
更改后按ctrl + shift + p导入所需的包。
答案 1 :(得分:2)
有时候,至少在Eclipse中,它会让它陷入困境,并且它不会让它消失。但是,使用Eclipse,您至少可以将光标放在标记上,它将解释问题是什么(或认为是什么)。我会尝试将鼠标悬停在错误的行上,看看是否有弹出框告诉你它的想法。
如果你确定它是错的,我经常发现保存文件(或所有文件)会修复它。有时添加然后删除错误行上的空格将修复它。
但是,我注意到文件顶部有一个不完整的import
,这可能会阻止语法检查程序正确分析源文件。
我的建议是首先修复它,然后尝试其他两个技巧(保存,如果不起作用,在错误的行上编辑和撤消)。希望这会让它消失。
当然,您可能希望检查一下R.java
文件,以确保该成员存在于某处。我以前被自己的拼写错误所困扰。