2012年5月18日金曜日

androidアプリ開発日記(1)~やっぱりhelloworld

androidのアプリを作ってみたくて、開発環境は作れたものの、まずどうしていいかわからかったのでメモ。
情報サイトを見ていたものの、イマイチ難しい。

HelloWorldを改造しながらちょっとずつ覚えていこうと思う。

目標は、過去記事に関連して
「Xperia Acro IS11SのMTU値を変更」するアプリを作ること。

まずは前提条件というか覚えておくこと

・ Activity=画面と思っておく。
・ 何かしようと思うと必要なクラスをimportする。
・ メインのプログラムは/src/namespace/○○.java
・ あらかじめ登録しておく文字列は/res/values/strings.xmlに記入
・ 画像を表示するアプリの場合/res内にdrawableディレクトリを作りその中にファイルを入れる。

ぐらいでしょうか?(少なすぎw)

まずはデフォルトで出来上がるファイルから

package com.hiropop.setumtu;

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

public class SetMTU extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }
}


11行目にあるsetContentView(R.layout.main);で/res/layoutディレクトリ内の、main.xmlを呼び出している。
(main.xmlにはhello worldと書かれている)

ここで、「R」は何を指しているかというと、/genディレクトリ内にあるR.javaと言うファイルを指しています。
R.javaは、開発環境で自動的に作られるもので、様々なリソース(文字・画像・レイアウト)ファイルの場所を指し示しているファイルの様です。

まれに、R.javaが壊れてしまう事例が発生するようですが、プロジェクトをクリーンすると再構築されるらしいです。

できたてホヤホヤのR.javaはこんな感じ

/* AUTO-GENERATED FILE.  DO NOT MODIFY.
 *
 * This class was automatically generated by the
 * aapt tool from the resource data it found.  It
 * should not be modified by hand.
 */

package com.hiropop.setmtu;

public final class R {
    public static final class attr {
    }
    public static final class drawable {
        public static final int ic_launcher=0x7f020000;
    }
    public static final class layout {
        public static final int main=0x7f030000;
    }
    public static final class string {
        public static final int app_name=0x7f040001;
        public static final int hello=0x7f040000;
    }
}


13・16・19行目を見ると、drawable(画像)・layout(レイアウト)・string(文字列)がそれぞれresディレクトリ内を指していると言っていいでしょう。(テキトウですいませんw)


さて、何も加えずにビルドすると、Hello World,SetMTU!などと文字が表示されますが、味気ないので手を加えてみます。

1.まずは表示する文字を変えます。

/res/values/string.xmlを開いて「hello(String)」と「app_name(String」の2つのエレメントがありますので、helloをクリックします。
画面の右側に、「Name」と「Value」がありますので、好きに変えてみます。

「Value」は変更しても問題ありませんが、Nameを変更すると、参照されなくなりますので、Main.xmlを開き、
@string/helloのプロパティからTextプロパティを「@string/welcome」(welcomeはstring.xmlでつけた名前)に変更します。


あとは、プロパティに色(Text Color)やフォントサイズ(Text size)など様々な手を加えてみます。

とりあえず、こんなとこかな?


0 件のコメント: