トップ » 技術記事 » Androidで楽しく学ぶJava入門(1) - 画面に好きな文字を表示する

Androidで楽しく学ぶJava入門(1) - 画面に好きな文字を表示する

タグ: Android Java

本連載は、Googleケータイ、Android を題材とした、Javaプログラミング入門講座の二回目です。今回は、画面に文字や絵を描画してみます。自作のアプリを普段持ち歩くケータイで動かすことができるので楽しいです。本連載で楽しくプログラミングを学びましょう。

前回のおさらい

前回は、Android や Java について、そして、開発環境のセットアップまでを駆け足で紹介しました。皆さんも、無事にAndroidのプログラムが実行できるようになったでしょうか。まだセットアップができていない皆さんは、前回の内容を参考にセットアップを行って下さい。

それから、Eclipse の使い方として、プロジェクトを作り、簡単なプログラムを書いて実行する方法についても紹介しました。これは、今後、自分でプログラムを作る時にも同じ手順で行うことになるので、確認しておきましょう。

また、作ったプログラムを実行する段階で、Androidのエミュレータの設定を行いました。このエミュレータの設定は、インストール後1度行えばよく、2回目以降は不要です。

もし、Androidの実機とPCを接続しているのなら、実機でプログラムが実行され、実機とPCが接続されていなければ、エミュレーターが起動して、その上でプログラムが動くようになっています。

エミュレーターで動かす場合には、そこそこパワーのあるPCでないと、苦しいという報告もありましたが、大丈夫でしたでしょうか?

画面に文字を表示する

それでは、今回の目標を確認してみます。今回は、Androidの画面に文字を表示する方法を紹介します。とは、言っても、Eclipse で Android のプロジェクトを作ると、はじめから「Hello,…」と文字が表示されると思います。ここでは、その文面を変えるにはどうするのか、どのような仕組みでそれが可能になるのかを紹介してみます。

→今回の目標 : 画面に「八角研究所」と表示する

http://aoikujira.com/demo/hakkaku/rc/20091023cMctf-run.gif

「Test02」プロジェクトを作成する

それでは、はじめにプロジェクトの雛形を作成してみましょう。Eclipse を操作して、Test02 プロジェクトを作成します。

手順(1)新規プロジェクトの作成

Eclipse を起動して、メインメニューから「File > New > Project …」をクリックします。そして、[Android Project]を選択して [Next]ボタンをクリックします。

http://aoikujira.com/demo/hakkaku/rc/20091011Ecbz07-android-project.gif

手順(2)プロジェクトの設定

[New Android Project]のダイアログが出ますので、ここにプロジェクトの設定を記入します。

設定の内容は以下のようにします。

Project Name Test02
Contents Create new project in workspace をチェック
Build Target Android 1.5 をチェック

そして、Properties を次のようにします。

Application name Test02
Package name com.example.test
Create Activity チェックして、Test02 を入力
Min SDK Version 3

そして、記入できたら、[Finish]ボタンをクリックします。

以上の手順で、プロジェクトの雛形が作成されました。

プロジェクトの雛形を眺める

Android のプロジェクトを作成すると、いろいろなファイルが作成されます。ちょっと眺めてみましょう。プロジェクトの中にあるファイルを見るには、画面の左側にある Package Explorer を利用します。

http://aoikujira.com/demo/hakkaku/rc/20091023v2ARs-package-explorer.gif
Javaファイルについて

今回、Test02 というプロジェクトを作ったので、その中を開いてみます。src/com.example.Test02 と開いていくと、Test02.java というファイルがあります。これが、Java のメインファイルとなります。

メインファイルを開いて見ると、次のようになっています。ここでは、Java ファイルに記述する事柄を概観してみます。それぞれの要素の詳しい機能についてはおいおい説明していきますので、あまり深く考えないで確認してみてください。

Test02.java の内容:

package com.example.test;

import android.app.Activity;
import android.os.Bundle;

public class Test02 extends Activity {
  // ...
}

Java の基本単位は、クラス(class)というものです。Test02.java というファイルなら、Test02 というクラスが定義されていることになっています。(ですから、「ファイル名 = クラス名」と覚えておくと良いでしょう。)

そして、クラスが多くなってくると役に立つのが、パッケージ(package)という機能です。Java のライブラリには、いろいろなものがあるので、時々、クラス名が被ってしまうこともあるのです。そのとき、クラス名が被ってしまっても、区別できるようにするのが、パッケージの機能です。プログラムの先頭にある、package というのが、それで、ここではTest02クラスが「com.example.test」というパッケージに分類されていることを表しています。

クラスとパッケージの関係を人間の名前に例えて言うなら、クラスが人の名前で、パッケージと言うが所属と言うことができます。ある会社の中に、田中さんが3人いるとしても、その3人が別の部署に属しているなら、「開発部の田中さん」とか「営業部の田中さん」と区別して呼ぶことができまます。

これと同じで、田中さんが作った Hoge というクラスと、鈴木さんが作った Hoge というクラスをプログラムから使いたいと思った時には、パッケージの機能を使うことで区別してそれぞれの機能を利用することができます。

そして、package の下を見てみると、「import」から始まる文があります。これは、他のクラスにある機能を使いたいときに記述するものです。ここでは「import android.app.Activity;」と書かれていますが、これは「android.app.Activity」という外部クラスを利用するということを表しています。

その次、import 文の下に「public class Test02 extends Activity」とあります。これが Test02 というクラスを宣言しています。先頭の public は外部へ公開するということを示し、末尾にある「extends Activity」というのは、Activity というクラスを拡張するという意味になります。

Java の便利な機能に、誰かが作ったクラスを元にして新しいクラスを作るという機能がありまして、ここでも「Activity」というクラスの機能を利用しつつ「Test02」という新しいクラスを作るということを表しています。(これは継承という機能です。)

http://aoikujira.com/demo/hakkaku/rc/20091023G5Ljw-about-class.gif
リソースについて

次に、Package Explorer で確認したいのが、res/layout/main.xml です。このファイルを開いてみると、画面デザインツールが開かれます。デザインツールの左側に「Button」とか「CheckBox」などの部品が並んでいます。これを画面にドラッグ&ドロップすれば、画面をその通りに作ることができます。

http://aoikujira.com/demo/hakkaku/rc/20091023rLSJP-layout.gif

しかし、Android SDK 1.5の段階では、それほど使いやすくないので、あまり使わないかもしれません。とは言え、使いにくいとは言いつつも、今回は利用します。

まず、はじめから配置されている「Hello World, Test02!」というラベル(TextView)をクリックしてから、画面の下側にある Properties のパネルを見てみて下さい。たくさんの項目が並んでいますが、「Text」という項目を探してみて下さい。

http://aoikujira.com/demo/hakkaku/rc/20091023mi1pz-text.gif

そこに「@string/hello」という値が設定されていることと思います。これは、hello というIDで設定されている文字列を表示するという意味です。そして、この値は、res/values/strings.xml で定義されています。Package Explorer で、res/values/strings.xml を開いて確認してみましょう。

http://aoikujira.com/demo/hakkaku/rc/20091023S9uua-strings.gif

すると、リソース文字列の編集画面が出ます。文字列の「hello」を選択すると、「Name:hello、Value:Hello Wolrd, Test02!」という値が表示されます。

http://aoikujira.com/demo/hakkaku/rc/20091023oT3hgD-strings-resource.gif

そこで、この value を「八角研究所」と書き換えてみましょう。そして、書き換えたら、メニューの[File > Save]をクリックして保存します。そして、プログラムを実行してみましょう。実行するには、メニューから[Run > Run]をクリック、続いて「Android Application」を選択して[OK]をクリックします。

エミュレータ-が起動して、画面に「八角研究所」と表示されたら今回の目標達成です。

http://aoikujira.com/demo/hakkaku/rc/20091023cMctf-run.gif

このように、res ディレクトリ以下には、画面レイアウトや、文字列リソースなどの情報を設定するようになっています。

※リソース(Resource)とは、資源を表す言葉です。Android 開発では、アプリケーションを作成する上で必要となる、アイコンや画面デザイン、文字列データなどを指してリソースと言います。

また、res ディレクトリ以下の XML を開くとデザインツールが表示されたと思いますが、メイン画面の下側にあるタブで「main.xml」や「strings.xml」という下向きのタブをクリックすると、XMLの内容を表示することができます。

http://aoikujira.com/demo/hakkaku/rc/20091023nuleu-click.gif

まとめ

以上、今回は Android プロジェクトのファイルをいろいろ見てみました。その中で、Java ファイルについても紹介しました。はじめのうちは、なんのためにあるのか分からないファイルも、そのうちにその役割が分かってくると思いますので、悩まず確認する感じで読み進めて下さい。

Series Navigation

執筆者紹介

クジラ飛行机

クジラ飛行机

くじらはんど(http://kujirahand/)にて、日本語プログラミング言語「なでしこ」(IPA未踏ユース採択)、テキスト音楽「サクラ」(OSPオンラインソフト大賞入賞)など多くのオンラインソフトを開発。著書に「Flexプロフェッショナルガイド」「なでしこ公式バイブル」、「一週間でマスターするActionScript3.0」など。

TrackBack URL :