標籤:android android開發 架構
在麥子學院裡有很多初學android開發的同學都在問安卓的開發架構問題,下面跟著麥子學院的android老師來看看相關的代碼:
Java代碼
1. publicclass App extends Activity {2. 3. public App () {//建構函式不用說了4. }5. 6. public void onCreate(Bundle savedInstanceState) {//介面初始化的時候調用7. super.onCreate(savedInstanceState);8. 9. setContentView(R.layout.skeleton_activity);//顯示布局介面,xml有定義,指進階介面。10.11. //setContentView(new MyView(this));//顯示布局介面,指低級介面,MyView它是內部類,後面有介紹。12.13. //以下是其他資料初始化14.15. ......16.17. } 18.19. public boolean onCreateOptionsMenu(Menu menu) {//初始化Menu菜單選擇項20. super.onCreateOptionsMenu(menu);21.22. //添加功能表項目,比如:23.24. menu.add(0, OK_ID, 0,R.string.ok).setShortcut(’2’, ’v’);//設定快速鍵25. //添加其他功能表項目。。。。。。26.27. return true;28. }29.30. public boolean onPrepareOptionsMenu(Menu menu) {//31. super.onPrepareOptionsMenu(menu);32.33. //這裡可以事先設定菜單的可見度,如果都可見,可以不設定34.35. menu.findItem(OK_ID).setVisible(true);//設定功能表項目可見度36. return true;37. }38.39. public boolean onOptionsItemSelected(MenuItem item) {//選擇了一個功能表項目的時候調用40.41. //這裡可以預先處理想要的變數42. switch (item.getItemId()) {43. case BACK_ID://一項一項的處理想要做的,不用我介紹了吧44. 45.46. return true;47.48. .............49. }50.51. return super.onOptionsItemSelected(item);52. }53.54. //以下是內部類MyView,如果你用的是進階介面(基於xml),此類可以不要;如果是低級介面嘛,你說呢?55.56. public class MyView extends View(){57.58. public MyView(Contextc){59.60. super(c);61.62. //初始化其他東西。。。。。63.64. }65.66. protected voidonSizeChanged(int w, int h, int oldw, int oldh) {//不常用,可不寫。67. super.onSizeChanged(w, h, oldw, oldh);68. }69.70. protected voidonDraw(Canvas canvas) {//幾乎必需寫71. canvas.drawXXX();72.73. 74. //invalidate();//如果有動畫,則必需加上。75. }76.77. public booleanonTouchEvent(MotionEvent event) {78. //觸摸前做點什麼 79. switch (event.getAction()) {80. case MotionEvent.ACTION_DOWN:81. invalidate();//如果要動畫或重新整理,則加上這句;通常這裡好像都要加上的;下同82. break;83. case MotionEvent.ACTION_MOVE:84. invalidate();85. break;86. case MotionEvent.ACTION_UP:87. invalidate();88. break;89. }90. return true;91. }92. }93.94. }
95.}
更多關於android開發的教學視頻盡在:http://www.maiziedu.com/course/android/
麥子android開發教程:Android開發架構詳解