第10回にしてようやく描画開始クラッカー

前回のHello World!解析から
今回の描画で必要な処理としては
1描画用のライブラリをインポートする
2TextViewはテキスト用なので、図形用のViewをnewする
3図形用のViewに赤い丸を設定する
4赤い丸を設定した図形用のViewをsetContentViewで表示する
で赤丸を表示できるのではないかと思っています。

では早速走る人
プロジェクト自体はHello World!プロジェクトを
変更していこうと思います。

1描画用のライブラリをインポートする
図形描画用のライブラリとして
android.graphicsがあるようなので
それをインポートします。
import android.graphics;
では、importとできるのは型のみで
android.graphicsではパッケージだから
importできない。のエラー。
予測変換で
$androida-予測変換
の表示パソコン
*で型を指定した場合にはそのパッケージ
全ての機能をimportできるような
ことが書いてあったので
import android.graphics.*;
を選択してimport。
使う機能だけ細かく型を指定して
importするのが基本的な使い方なのかなと思いつつ
はじめは区別できないので大きい区分でimportして
進めていくことにします。
これで1は完了したと思われる。

2TextViewはテキスト用なので、図形用のViewをnewする
newするとは言ってみたものの
イメージはいまいちつかめていません。
TextViewの場合にはsetTextっていう機能で
Hallo,Androidっていうテキストを設定して
setContentViewするだけで画面に設定した
テキストが表示されるという流れだと思う。
その機能を使うためにTextViewをtvという名前で
newしたのだとすると
今回は赤丸を設定してsetContentViewできるものを
newすればいいのかなとは思うのですが・・・
何をnewすればいいのかさっぱりですショック!

android.graphics.*の中にdrawCircleがあるので
それを使えばいいのだとは思うのですが
使うための何かを根本的に
見失っている気がひしひしとガーン
現在までのソースが以下の通り。
というか、importに追加した以外変化なし。

package com.example.helloandroid;

import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
import android.graphics.*;
←これ追加しただけ

public class HelloAndroid extends Activity {
  /** Called when the activity is first created. */
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    TextView tv = new TextView(this);
    tv.setText("Hello, Android");
    setContentView(tv);
  }
}


イメージとしてはこうなる予定左下矢印

public class HelloAndroid extends Activity {
  /** Called when the activity is first created. */
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    // TextView tv = new TextView(this);
    ↑これのかわりに↓
    GraphicView gv = new GraphicView(this);   

    // tv.setText("Hello, Android");
    ↑これのかわりに↓
    gv.drawCircle(x,y,radium,paint);

    // setContentView(tv);
    ↑するとこれが↓
    setContentView(gv);

  }
}

すでにGraphicViewが存在しないので破綻叫び
一旦、調べ直してきますDASH!