10

画像を表示してみる

Eclipseのインストールの概要

1.今回のAndroidアプリ開発は

今回は、自分で用意した画像を表示するAndroidアプリを開発します。これも、前回のAndroidアプリを、少し改造するだけで開発できます。

2.プロジェクトを作る

前回のプロジェクトを再利用することにします。

3.画像を準備する

Androidアプリで使う画像を準備します。今回は、この2つを表示してみることにします。( back.png / image.png )

android background android text

画像を「 start 」の「 res 」の「 drawable 」の中に入れます。アイコンが入ってるフォルダです。

*drawableが複数あるかも知れませんが、それは解像度による分類です。

4.Activityプログラミング

Start.java の方は、前回のままでOKです。

5.Viewプログラミング

Screen.javaの方を、次のように変更します。

■ソースコード

package my.start;

import android.content.Context;
import android.content.res.Resources;
import android.view.View;
import android.graphics.*;

public class Screen extends View {
	
	public Screen(Context context) {
		super(context);
	}
	
	@Override
	protected void onDraw(Canvas c) {
		super.onDraw(c);
		Paint p = new Paint();
		Bitmap img0, img1;
		
		Resources res = this.getContext().getResources();
		img0 = BitmapFactory.decodeResource(res, R.drawable.back);
		img1 = BitmapFactory.decodeResource(res, R.drawable.image);
		
		c.drawBitmap(img0,0,0,p);
		c.drawBitmap(img1,0,0,p);
	}

}

■ちょっと解説
今回のメインも「 onDraw 」の中身です。

		super.onDraw(c);
		Paint p = new Paint();
		Bitmap img0, img1;
		Resources res = this.getContext().getResources();
		
		img0 = BitmapFactory.decodeResource(res, R.drawable.back);
		img1 = BitmapFactory.decodeResource(res, R.drawable.image);
		
		c.drawBitmap(img0,0,0,p);
		c.drawBitmap(img1,0,0,p);

それぞれは、次のような働きがあります。

□Bitmap img0, img1;
ビットマップオブジェクトを作る

□Resources res = this.getContext().getResources();
リソースオブジェクトを作る

□img0 = BitmapFactory.decodeResource(res, R.drawable.back);
img0 に back.png を入れる

□c.drawBitmap(img0,0,0,p);
右上(0,0)に img0 を表示する

6.実行してみる

実行してみましょう。次のように表示されたら成功です。

android app

7.次回のAndroidアプリ開発は

今回は、自分で用意した画像が表示できるようになりました。次回は、タッチパネルを使ってみましょう。