-基本-■概要Canvasは単純な図形や文字の描画を行うことができるクラス(機能)です。処理コストが高いので多用しすぎると処理落ちの原因となります。■事前準備1.新しいプロジェクト「PaintTest」を作成する2.HelloWorldの文字を消す3.一度実行してエミュレータの起動を行っておく■描画方法CanvasクラスはViewクラスのonDrawメソッドの引数として渡されるので、このメソッドを使用して描画を行います。●役割CanvasクラスはViewクラスのonDrawメソッドで渡されます。このCanvasクラスには矩形描画、テキスト描画、ライン描画などいくつもの描画メソッドが実装されており、こちらを使用することで対象となっているViewに対して描画をすることが可能となります。Viewに対してCanvasを通して間接的に描画する流れです。引数のCanvasクラスを使用し描画処理を行うonDrawはゲームの描画処理のように一定周期で自動的に呼び出されるメソッドではなく、システムがViewに対して更新が必要と判断した際にのみ呼び出されるメソッドです。●PaintクラスPaintクラスは描画する場合に使用するペン情報を持ったクラスで、Canvasクラスで描画処理を行う際には必須となります。pa);}●Viewを継承onDrawはViewを継承したクラスで使用できるので、クラスを新規作成し、そこにonDrawをオーバーライドします。・コンストラクタの実装Viewを継承した際にはコンストラクタを実装する必要があります。コンストラクタは複数ありますが今回は以下の内容で実装します。今回は使用しないので、説明はしません。●クリアViewに描画されている内容をクリアしたい場合は「drawColor」を使用して特定の色で塗りつぶします。内容:引数で指定した色でViewを塗りつぶします。Mode.CLEAR)とすると透過色で塗りつぶします。Mode.CLEAR);●再描画ViewのCanvasに対して再描画を依頼するには「invalidate」メソッドを使用します。メソッド名:invalidate戻り値:なし引数:なし内容:ViewのCanvasに再描画を依頼するinvalidateは実行すればすぐに反映されるとは限りません。遅れることもあります。JavaClassでPaintViewクラスを作成します。※名前以外はそのままの設定で問題ありません。以下のコードをコーディングします。CostomViewをクリックする4.クラスの選択Viewを継承したクラスのリストが表示されるので、その中からPaintViewクラスを選択します。6.実機で確認する実機で確認すると赤色の四角が描画されます。JavaClassでPaintViewクラスを作成します。※名前以外はそのままの設定で問題ありません。以下のコードをコーディングします。Viewを選択し、AndroidにD&Dする4.クラスの選択Viewを継承したクラスのリストが表示されるので、その中からPaintViewクラスを選択します。5.Viewのサイズ設定AndroidにViewが設置されると青い枠が表示されるのでAndroidの画面いっぱいに広がるように設定します。6.実機で確認する実機で確認すると赤色の四角が描画されます。探している内容が見つからなかったら以下のサイトにあるかもしれません。筆者が開発にかかわらせてもらったアプリのリンクです。