在android上编程,错误与" super(context);"

时间:2015-01-19 19:30:01

标签: java android eclipse

我的程序有问题。我使用了这本书"开始Android平板电脑游戏编程"。在本书中,使用Eclipse,Java JDK和Android SDK Manager。

com.gameproject.grafika package;

android.content.Context import;
android.graphics.Bitmap import;
android.graphics.BitmapFactory import;
android.graphics.Canvas import;
android.graphics.Color import;
android.view.View import;

public class GameView {
    public GameView (Context context) {
        super (context);
    }

    public void OnDraw (Canvas canvas) {
        Bitmap star = BitmapFactory.decodeResource (getResources (), R.drawble.gracz);
        canvas.drawColor (Color.BLACK);
        canvas.drawBitmap (star, 10, 10, null);
    }
}

Eclipse突出显示super (context)BitmapFactory.decodeResource(getResources () R.drawble.gracz)

可能是什么原因? 请快速帮助,抱歉我的英语。

1 个答案:

答案 0 :(得分:3)

问题似乎是你没有扩展任何东西,但是你打算这样做。

super(context)调用父类的构造函数。但是,GameView不扩展任何类,因此没有要调用的父类。

同样,您尚未定义getResources()方法,并且由于您没有扩展任何内容,因此没有父类提供getResources()方法。因此,BitmapFactory.decodeResource(getResources(), R.drawble.gracz)也不起作用。

从这个类的外观来看,你的意思是扩展View类。