今天的課程非常有成就感,算是入門的集大成,回想這一個月,從一個門外漢,到現在可以模仿寫ATM APP,真是不可思議!!!
更進一步,今天要記錄兩個觀念:
1. Java只允許一個繼承關係,所以要帶入Implement觀念
程式重點在於可讀性,如果可以多重繼承,父類別往上一直往上開展的話,就變成一棵大樹,讀的人就不知道到底是哪一個方法,需要花很多時間去猜,去追溯,所以Java允許單一繼承關係,然而,需要多重繼承時,在方法下可以用Implememt把其他方法拉進來(老師稱之為乾爹)。
以OnItemClickListener為例,因為public class FuncActivity extends Activity繼承Activity而來,已經單一繼承,如果需要把OnItemClickListener方法帶入,就要用到implement。
implement之後,要去新增 implement項目所屬的子方法,才算完整。
2.完成之後,利用switch, case, break的語法,OnItemClickListener收到各個item被touch的反應各為怎樣。
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long itemId) {
Toast.makeText(this, position+"", Toast.LENGTH_SHORT).show(); 測試把編號吐出來
switch ((int)itemId) {3. 模擬器結果: 登入正確後進入功能選單
case R.drawable.f1:
//開啟餘額查詢
break;
case R.drawable.f2:
break;
case R.drawable.f3:
break;
case R.drawable.f4:
//歷史交易HistoryActivity
break;
case R.drawable.f5:
break;
} }
各選單功能icon已經寫了OnItemClickListener,所以被touch到的時候,暫時先以toast把position號碼吐出來。測試結果按下餘額查詢後,顯示position編號0,設定成功!!!!
後記: 非常實用的一些功能,原以為Touch panel上每一個 dot要去偵測,結果android的人寫了OnItemClickLietsner去傾聽這個物件被按到的訊號,這麼簡單的方式,無怪乎這麼多人能夠開發觸控功能的遊戲。
沒有留言:
張貼留言