話說今天又沒事做了好無聊又想睡,因為一直在等待....等待美編給版
話說本公司其中一個網站改版我(一個人)已經寫了將近 60% (前台 + 後台)
然後上禮拜開完會後接到一個惡耗,說網站風格要調整頁面也要跟著調
那就詭異了~~版面不是三個月前就開會討論好了嗎,但大家似乎都當沒開過會一樣
於是乎我做了將近快一個月的白工....但曾經被高鐵撞過的我哪還會怕被台鐵撞
只是比較怕撞完輾過又倒車而已,想起前公司兩三天就改版一次,三個月算是佛心了~
於是今天又很無聊的繼續玩 Android SDK,以下是今天的學習心得.....
底下這網站實在是很適合初學者,所以我幾乎是一步一步跟著學
http://code.google.com/p/androidbmi/wiki/AndroidMenu
一、Menu 選單
首先要先認識 onCreateOptionsMenu 與 onOptionsItemSelected
onCreateOptionsMenu 是當你按下手機的 Menu 時會觸發的動作
onOptionsItemSelected 是當你按下跳出來的 Menu 選項時會觸發的動作
所以是先觸發 onCreateOptionsMenu 才有 onOptionsItemselected
然後就開始寫
@Override
public boolean onCreateOptionsMenu(Menu menu){
supser.onCreateOptionsMenu(menu);
menu.add(0,0,0,"關於");
menu.add(0,1,0,"離開");
return true;
}
上面的意思是.......因為 Activity 類別本身就有 onCreateOptionsMenu 這個函數
(不講誰知道)
但是因為偶要加上自己的 code 所以就要覆寫他因此加上了 @Override
但是一覆寫後整個函數就空了,所以要先執行一遍原本 Activity 中的 onCreateOptionsMenu
這樣就可保有原來的功能又完成覆寫, 而要執行上層類別的關鍵字就是 super
然後這個方法有回傳值型態是 boolean ,所以加了一個 return true;
(不講誰知道)
再來新增 Menu 選單的方式就是
menu.add(0, 識別符號(identifer), 0, 字串或資源識別符號);
然後 Menu 框架好了再來就是定義按下去要幹嘛
所以要用 onOptionsItemselected 方法
這東西也是要先覆寫
@Override
public boolean onOptionsItemSelected(MenuItem item){
super.onOptionsItemSelected(item);
switch(item.getItemId()){
case 0:
alert3();
break;
case 1:
finish();
}
return true;
}
傳入的 item 用 getItemId 抓到到底是按到哪個識別
然後那個 alert3() 不是內建的是本人之前寫的,其實就是跳出 AlertDialog
而如果你是點離開的話,就跑內建的 finish(); 完成關閉的動作
其實還蠻簡單的
二、將資訊傳到下一頁 (這感覺比較像寫網頁的講法)
據說每個 Activity 都等於是一頁,如果要將資訊傳到下一個 Activity 就如下
//也是先建立一個意圖
Intent intent = new Intent();
intent.setClass(你原本的 Activity,你要去的 Activity);
//如果你要順便傳資料過去如下
Bundle bundle = new Bundle();
bundle.putString(你要傳遞資料的Key,你要傳遞資料的值);
....................
intent.putExtras(bundle);
startActivity(intent);
然後另一個 Activity 要接值的話用
Bundle bundle = this.getIntent.getExtras();
bundle.getString(你傳過來的key名稱);
就接到了
以上是今天學到的東西