前回より、行き詰っていたところ
酸味さんよりありがたいアドバイス頂きまして
すこし光明が見えてきました。
酸味さんいつもいつも本当に大感謝ですm(_ _ )m
頂いたアドバイスに沿って
現在の自分の理解を晒しアップ
まずはアドバイスを元に変更した
現在のプログラムが
です。
package com.example.helloandroid;
import android.app.Activity;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.os.Bundle;
import android.view.View;
public class HelloAndroid extends Activity
{
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(new GView(this));
}
}
public class GView extends View
{
//Viewを継承しておいて
public GView(Context context)
{
super(context);
//とりあえず背景色を白に指定
setBackgroundColor(Color.WHITE);
}
@Override
protected void onDraw(Canvas canvas)
{
Paint pnt = new Paint();
//一応アンチエイリアス処理しとく
pnt.setAntiAlias(true);
//ここから円を描きます。
//中は塗りつぶしで
pnt.setStyle(Paint.Style.FILL);
//色を赤に
pnt.setColor(Color.argb(255,255,0,0));
//座標50 50に半径20で円を
canvas.drawCircle(50, 50, 20, pnt);
}
}
といってもアドバイスまるまるコピーです
ずっと眺めていて若干気付いたのですが
前回はonCreateのなかで完結するものだと
思ってたのが根本的に詰まっていた原因な気がしてます。
実際には描画するためにはonDrawを使って
丸の色や大きさを設定して
前回使おうとしたdrawCircleは
onDrawの中でしか使えない
のかなと。
それでonDrawを使うためはViewクラスを継承した
GViewをnewして作成する
そうしてできあがったGViewを
setContentView使って表示する。
という流れではなかろうかと思っております。
で、備忘録として
アンチエイリアスは境界線を滑らかにする処理っとφ(..)
で実行しようと思ったのですが
2点エラーが発生しておりまして

ひとつが
public class GView extends View
のところに
public型 GViewはそれ独自のファイル内に
定義されなければなりません。
というのと
もうひとつは
canvas.drawCircle(50, 50, 20, pnt);
のところに
構文エラーがあります。
";"を挿入してStatementを完了してください。
ってやつがいてます。
2こ目のやつなんておもいっきり
";"はいってるのに消えないです
いろいろやってみてるのですが
いまんところ消えてくれないです。
甘えきってはならないので引き続き
自分でいろいろやってみようと思っていますが
ヒントだけでもいいので頂けると助かります。
宜しくお願いしますm(_ _ )m
酸味さんよりありがたいアドバイス頂きまして
すこし光明が見えてきました。
酸味さんいつもいつも本当に大感謝ですm(_ _ )m
頂いたアドバイスに沿って
現在の自分の理解を晒しアップ

まずはアドバイスを元に変更した
現在のプログラムが
です。package com.example.helloandroid;
import android.app.Activity;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.os.Bundle;
import android.view.View;
public class HelloAndroid extends Activity
{
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(new GView(this));
}
}
public class GView extends View
{
//Viewを継承しておいて
public GView(Context context)
{
super(context);
//とりあえず背景色を白に指定
setBackgroundColor(Color.WHITE);
}
@Override
protected void onDraw(Canvas canvas)
{
Paint pnt = new Paint();
//一応アンチエイリアス処理しとく
pnt.setAntiAlias(true);
//ここから円を描きます。
//中は塗りつぶしで
pnt.setStyle(Paint.Style.FILL);
//色を赤に
pnt.setColor(Color.argb(255,255,0,0));
//座標50 50に半径20で円を
canvas.drawCircle(50, 50, 20, pnt);
}
}
といってもアドバイスまるまるコピーです

ずっと眺めていて若干気付いたのですが
前回はonCreateのなかで完結するものだと
思ってたのが根本的に詰まっていた原因な気がしてます。
実際には描画するためにはonDrawを使って
丸の色や大きさを設定して
前回使おうとしたdrawCircleは
onDrawの中でしか使えない
のかなと。それでonDrawを使うためはViewクラスを継承した
GViewをnewして作成する

そうしてできあがったGViewを
setContentView使って表示する。
という流れではなかろうかと思っております。
で、備忘録として
アンチエイリアスは境界線を滑らかにする処理っとφ(..)
で実行しようと思ったのですが
2点エラーが発生しておりまして


ひとつが
public class GView extends View
のところに
public型 GViewはそれ独自のファイル内に
定義されなければなりません。
というのと
もうひとつは
canvas.drawCircle(50, 50, 20, pnt);
のところに
構文エラーがあります。
";"を挿入してStatementを完了してください。
ってやつがいてます。
2こ目のやつなんておもいっきり
";"はいってるのに消えないです

いろいろやってみてるのですが
いまんところ消えてくれないです。
甘えきってはならないので引き続き
自分でいろいろやってみようと思っていますが
ヒントだけでもいいので頂けると助かります。
宜しくお願いしますm(_ _ )m