2

このエラーが発生しています:

@Override
public void paint(Canvas canvas) {
}

paint(Canvas)タイプ MainActivityのメソッドは、スーパータイプ メソッドをオーバーライドまたは実装する必要があります。@Overrideメソッドの前に を削除した場合にのみ、エラーが消えます。レベル1.6のプロジェクトプロパティJavaコンパイラですでに設定しています

手伝って頂けますか?

4

3 に答える 3

3

を拡張しているActivity場合、ペイント メソッドをオーバーライドすることはできません。

ペイントはActivityメソッドではありません。拡張するクラスの既存のメソッドのみをオーバーライドできます。

また、私はペイントを使用したことがありません。onDraw(Canvas)からをオーバーライドしますViewか?

于 2012-10-20T16:49:21.590 に答える
1

のスーパークラスに「存在しない」メソッドをオーバーライドしようとしているようですMainActivity

いくつかの考えられる理由 (および解決策):

  1. ( ) が継承しextends ...ていると思われるクラスに追加するのを忘れました。MainActivity
  2. メソッド名を混同してはいけません。paint()そのような場合は、メソッド名を変更してください。
  3. これはこのクラスの新しいメソッドであり、注釈 @Override を削除する必要があります。
  4. 元のメソッドの引数を変更し、オーバーライドではなくオーバーロードしています。本当にオーバーライドしたい場合は同じ引数に固執するか、@Overrideオーバーロードした後であればアノテーションを削除する必要があります。
于 2012-10-20T16:49:37.693 に答える
0

実際にオーバーライドするメソッドが親クラスに存在する場合は、少なくともjava1.6でコンパイルしていることを確認してください。

したがって、プロジェクトを左クリック->プロパティ->Javaコンパイラ->少なくともjava1.6を選択し、プロジェクトをクリーンアップして再構築します。

于 2012-10-20T18:17:19.803 に答える