講義資料

812 views
774 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
812
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

講義資料

  1. 1. インテリジェントシステム 第5回
  2. 2. 課題 <ul><li>部品を3個以上用いて、Androidの画面を作成せよ </li></ul><ul><li>作成された画面のコピーとリソースファイルを添付してレポートを作成せよ </li></ul><ul><ul><li>6月15日まで </li></ul></ul>
  3. 3. 実際のプログラムに触れてみる <ul><li>下記にサンプルプログラムがあります </li></ul><ul><li> (SDKのあるディレクトリ)android-sdk-windows-1.5_r1platformsandroid-1.5samples </li></ul>
  4. 4. サンプルプログラム <ul><li>HelloActivity </li></ul><ul><li>JetBoy </li></ul><ul><li>LunarLander </li></ul><ul><li>NotePad </li></ul><ul><li>Snake </li></ul><ul><li>等 </li></ul>
  5. 5. サンプルプログラムの見方 <ul><li>Eclipseにプロジェクトごと読み込める </li></ul>
  6. 6. ここをクリック ソースプログラムの位置を指定
  7. 7. プログラムを動かしてみよう <ul><li>Snakeの例 </li></ul>
  8. 8. Snakeを構成するプログラム <ul><li>Java </li></ul><ul><ul><li>Snake.java </li></ul></ul><ul><ul><li>SnakeView.java </li></ul></ul><ul><ul><li>TileView.java </li></ul></ul><ul><li>XML </li></ul><ul><ul><li>snake_layout.xml </li></ul></ul>
  9. 9. SnakeView Snake Activityを定義するメインプログラム 大半の機能が集約されたプログラム 600m secごとに動作 TileView 継承 update() RefreshHandler 自分自身にメッセージを送る ハードウェア onKeyDown() 複数の四角領域を表示 setTile()  (タイルの定義) onDraw() ( 本当の表示部分) onCreate() onPause() onSaveInstanceState() Android
  10. 10. まとめると <ul><li>イベントの処理 </li></ul><ul><ul><li>onXXX メソッドによって行われる </li></ul></ul><ul><ul><ul><li>初期化 </li></ul></ul></ul><ul><ul><ul><li>キーボードからの入力 </li></ul></ul></ul><ul><li>メッセージの処理 </li></ul><ul><li>実際の描画 </li></ul><ul><ul><li>Canvas.drawBitmap メソッドによる </li></ul></ul>
  11. 11. Activityに起きるイベント <ul><li>アクティビティの状態変化につれて以下のイベントが順に起きる </li></ul><ul><li>onCreate()   (必須、他は必要に応じて) </li></ul><ul><li>onStart() </li></ul><ul><li>onResume() </li></ul><ul><li>アクティビティの実行が起こる </li></ul><ul><li>onFreeze() </li></ul><ul><li>onPause() </li></ul><ul><li>onStop() </li></ul><ul><li>onDestroy() </li></ul>
  12. 12. Viewに起きる主なイベント <ul><li>onSizeChange() サイズが変わったとき </li></ul><ul><li>onDraw() 描画しなければいけないとき </li></ul><ul><li>onKeyDown() キーが押されたとき </li></ul><ul><li>onKeyUp() キーがはなされたとき </li></ul><ul><li>onTouchEvent() タッチスクリーンが触れられたとき </li></ul><ul><li>onFocusChanged() フォーカスを得たり失ったりしたとき </li></ul>
  13. 13. Message <ul><li>Handler クラスによって Message を割り当てたり、送ったりすることができる </li></ul><ul><ul><li>メッセージキューとスレッドを持つ </li></ul></ul><ul><ul><li>obtainMessage(), sendMessage(), sendMessageDelayed() 等を通して利用 </li></ul></ul><ul><ul><li>handleMessage() によって受け取る </li></ul></ul><ul><li>Message には、データの集まり( Bundle) を添付することができる </li></ul>

×