Androidで遊ぶ

Hello World

とりあえず、AndroidのTutorialに従って、Hello Worldしてみた。まあ、普通だ。
続いて、現在時刻でも表示してみようかと思った。

仕様

テキストを表示するフィールドと、ボタンを画面上に設けて、ボタンを押したら現在時間を表示するようにする。
なんで、自動で表示しないか?っていうと、タイマー処理の仕方がまだ分からんから。

画面設計

とりあえず、深く考えずに、main.xmlを以下のようにする。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout android:id="@+id/LinearLayout01"
	android:layout_width="fill_parent" android:layout_height="fill_parent"
	android:orientation="vertical" xmlns:android="http://schemas.android.com/apk/res/android">
	<EditText android:text="@+id/EditText01" android:id="@+id/EditText01"
		android:layout_width="wrap_content" android:layout_height="wrap_content"
		android:gravity="center_horizontal" android:layout_gravity="center_horizontal" />
	<Button android:text="@string/Button01" android:id="@+id/Button01"
		android:layout_width="wrap_content" android:layout_height="wrap_content"
		android:layout_gravity="center"></Button>
</LinearLayout>

onCreate()を編集

onCreate()を以下のように編集する。

package com.example.todaynow;

import java.util.Date;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView.BufferType;

public class TodayNow extends Activity {
	private EditText today;

	/** Called when the activity is first created. */
	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		Button nowButton = (Button) findViewById(R.id.Button01);
		today = (EditText) findViewById(R.id.EditText01);
		today.setText(getTodayNow(), BufferType.NORMAL);
		nowButton.setOnClickListener(new View.OnClickListener() {
			@Override
			public void onClick(View v) {
				today.setText(getTodayNow(), BufferType.NORMAL);
			}
		});
	}

	private String getTodayNow() {
		StringBuffer sb = new StringBuffer();
		sb.append((new Date()).toString());
		return sb.toString();
	}
}

びっくりするくらい、何の変哲もないコードだけれど、これでemulator上でEditTextとButtonが表示されて、ボタンを押すと現在時間が表示されると、なんか嬉しい。オレにだって、Androidアプリケーションが書けたじゃん!まだまだオレも捨てたもんじゃないじゃん!的な。
とはいえ、一応「コンピュータの専門家」のふりして15年くらい仕事をしてきたワケで、この程度のコードを書くくらいで喜んでちゃいかんとオレのゴーストが囁くんだけれど、まあ、とりあえず。