そろそろ画像表示とか動きとかゲーム寄りな事をしたい人が出てくると思うので、
まずは簡単なViewを解説します。
とりあえず、難しい事は考えずに以下のクラスを用意してください
import宣言もEclipseなら自動でmatigainakuいけます。
次にActivity
setContentViewでR.layout.xml名じゃない?!
まあ、先に作ったViewをセットしてます。
先に画面
ドロイド君が出ましたね。
まずは気になるここ
Bitmap bmp = BitmapFactory.decodeResource(super.getResources(), R.drawable.ic_launcher);
コンパイルエラーになるならここだけです。
エラーが出たら「ic_launcher」って名前の画像をdrawable○○に入れて下さい(画像形式はあまり問いません)
要はdrawableなフォルダからRクラスのdrawableに管理されてるidで画像を読み込んでます。
次にここ
@Override
public void onDraw(Canvas canvas){
Paint paint = new Paint();
float left = 100;
float top = 200;
canvas.drawBitmap(bmp, left, top, paint);
}
ここで読み込んだ画像を表示しています。
Paintは画像の時は気にしなくてOKです。
と、言うことで気にするパターン
画面です。
画面見ても分かりにくいですが、縦位置は以下の注意点があります。
・画像は上の位置を指定
・文字は下の位置を指定
を意味します。
分かりやすいサンプル
次に画像
同じ位置を指定しているのに、重ならないで表示されていますね。
そうゆうことです。




まずは簡単なViewを解説します。
とりあえず、難しい事は考えずに以下のクラスを用意してください
import宣言もEclipseなら自動でmatigainakuいけます。
public class ViewSample extends View
{
private Bitmap bmp = BitmapFactory.decodeResource(super.getResources(), R.drawable.ic_launcher);
public ViewSample(Context context){
super(context);
}
@Override
public void onDraw(Canvas canvas){
Paint paint = new Paint();
float left = 100;
float top = 200;
canvas.drawBitmap(bmp, left, top, paint);
}
}
次にActivity
public class MainActivity extends Activity
{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(new ViewSample(this));
}
}
setContentViewでR.layout.xml名じゃない?!
まあ、先に作ったViewをセットしてます。
先に画面
ドロイド君が出ましたね。
まずは気になるここ
Bitmap bmp = BitmapFactory.decodeResource(super.getResources(), R.drawable.ic_launcher);
コンパイルエラーになるならここだけです。
エラーが出たら「ic_launcher」って名前の画像をdrawable○○に入れて下さい(画像形式はあまり問いません)
要はdrawableなフォルダからRクラスのdrawableに管理されてるidで画像を読み込んでます。
次にここ
@Override
public void onDraw(Canvas canvas){
Paint paint = new Paint();
float left = 100;
float top = 200;
canvas.drawBitmap(bmp, left, top, paint);
}
ここで読み込んだ画像を表示しています。
Paintは画像の時は気にしなくてOKです。
と、言うことで気にするパターン
@Override
public void onDraw(Canvas canvas){
Paint paint = new Paint();
float left = 100;
float top = 200;
paint.setColor(Color.RED);
paint.setTextSize(30);
canvas.drawText("HOGEHOGE", left, top, paint);
}
画面です。
画面見ても分かりにくいですが、縦位置は以下の注意点があります。
・画像は上の位置を指定
・文字は下の位置を指定
を意味します。
分かりやすいサンプル
public void onDraw(Canvas canvas){
Paint paint = new Paint();
float left = 100;
float top = 200;
paint.setColor(Color.RED);
paint.setTextSize(30);
canvas.drawBitmap(bmp, left,top, paint);
canvas.drawText("HOGEHOGE", left, top, paint);
}
次に画像
同じ位置を指定しているのに、重ならないで表示されていますね。
そうゆうことです。


