onDrawが呼び出せない

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
MitiMinish
記事: 12
登録日時: 10年前

onDrawが呼び出せない

#1

投稿記事 by MitiMinish » 10年前

androidの館を見てプログラミングをしているのですが、

s2.09の章のプロジェクトをダウンロードして、
GameMgr.javaのコードを書き換えると、

Suspicious method call; should probably call "draw" rather than "onDraw"

というエラーが出ます。

何も書き換えない状態なら動くことは確認しているので、
何か設定がおかしいと思うのですが、
どうすればいいでしょうか。

回答よろしくお願いします。

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: onDrawが呼び出せない

#2

投稿記事 by softya(ソフト屋) » 10年前

onDrawが無くなっているということはありませんか?
ただ、変更点を具体的に書いて貰わないと的確には答え辛いです。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

ISLe
記事: 2650
登録日時: 13年前
連絡を取る:

Re: onDrawが呼び出せない

#3

投稿記事 by ISLe » 10年前

それはコンパイルエラーではなくてAndroid SDKのlintが発するメッセージですね。

onDrawを呼び出しているけどdrawの間違いじゃないのか?ってのがメッセージそのままの意味です。

onDrawというメソッド名はフレームワークが用意するコールバックイベントメソッドの形式なので、そういう名前の付け方は良くない。
アプリ側で呼び出して使うメソッドの名前はdrawであるのがふさわしいということです。

lintはAndroidの館ができたときにはまだありませんでした。
他にもAndoir SDKはバージョンアップしてあちこち変わっています。

MitiMinish
記事: 12
登録日時: 10年前

Re: onDrawが呼び出せない

#4

投稿記事 by MitiMinish » 10年前

とりあえずonDraw(Canvas c)という関数名がいけないようなので、
myDraw(Canvas c)として実行することができました。
draw(Canvas c)でなくても実行できました。

androidの館の情報が最新のSDKで作られたものではないということがわかりました。

回答ありがとうございます。

閉鎖

“C言語何でも質問掲示板” へ戻る