2011年3月19日土曜日

アンドロイドでなんか作ってみよう

と思った。

sdkの準備とかはそこらじゅうで説明してるのでそのとおりにすませて、プロジェクト作成。

しきたりに則ってhello worldをすませたので、とりあえず、時計でも作りましょう。

  • アンドロイドのアプリの画面はActivity。
  • ActivityにTextViewとかButtonとか並べて画面を作る。
  • 並べるにはxmlに書く方法とプログラムで突っ込む方法がある。
  • Viewを継承して自分で部品を作れる。

ぐらいのいい加減な知識でViewを継承して時計Viewをつくって貼りつけた。

時計の作り方は2通りあって、

簡単な方 → ひたすら現在時刻を表示し続ける。すぐに電池が切れる。切り替えようとしても反応しない。キラーアプリ。
難しい方 → 次に表示を書き換える時刻にシステムに起こしてもらうようにセットしてそれまで寝る。システム様にお願いする方法をみつけないといけない。

こちらの方が分かりやすくお願いの仕方を説明してくださってました。



まあ、Runnable.run() を呼んでいただく呪文をこの通りコピペしますと、
あとは普通のjavaと一緒ですね。
run()の中でView.invalidate()を呼んで、View.onDraw()で現在時刻を取得して針とか描くだけ。
現在時刻はSystem.currentTimeMillis()で取れるのでこれも普通。

Math.sin()とかもあるので、90度傾いた秒針を描画したところでハタと思った。

時間って上の方に表示されてるよね?
わざわざこのアプリひらくか?

# いや、最初からわかってたんですけど、何作るか考えるのにくじけたというか...

どうしようかと思ったその時、ふと手元のロイドちゃん時計を見た。
ウィジェットだ。そうだ。ウィジェットだ。

ウィジェットはViewは使えません ... orz

ということでつづく。

0 件のコメント:

コメントを投稿