Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發 >> 高級開發 >> Android Button應用法則

Android Button應用法則

編輯:高級開發

我們曾經在其他文章中為大家詳細介紹了一些可視化編程以及基於界面的編程方法,那麼今天大家將會了解到有關android Button的具體應用,以此更進一步加深對界面編程的認知程度。

  • android進度條相關應用技巧解析
  • android鍵盤操作相關技巧分享
  • android模擬器具體作用淺談
  • android列表框應用技巧講解
  • android構造塊類別總結

android 界面編程有兩種基本的方法,一種是在代碼中,動態創建一個個組件,及把這些組件用Layout來進行組合成復雜的界面展現。一種是用圖形化的方式來編寫 布局Layout,這些布局被保存在XML文件中,會編譯成資源,被程序中的Activity來加載(setContentView()), 再通過findVIEwById方式來獲得每一個界面組件的引用進行操作。對於大多數人來說,喜歡最直觀的方式,既代碼中動態生成的方式。我們就先從這裡說起,至於可視化編程及布局資源的方式以後專門來講述。

一,android Button布局管理(Layout)

每一個界面組件都是VIEw的子類,都可以單獨占用一個屏幕,但是真正的有用的界面都是這些組件的組合,在android中都是用各種Layout來進行布局管理,這與傳統的J2SE中的一些AWT,SWING界面方式基本相同,這裡就不多說。

二,android Button一個單獨的界面元素:

在前面說到Hello World例子中,講過這樣一段代碼。在Activity中.

  1. public class HelloActivity extends Activity {
  2. /** Called when the activity is first created. */
  3. @Override
  4. public void onCreate(Bundle savedInstanceState) {
  5. super.onCreate(savedInstanceState);
  6. TextVIEw tv = new TextVIEw(this);
  7. tv.setText("Hello, World!");
  8. this.setContentVIEw(tv);
  9. }
  10. }

這裡並沒有用到Layout,這就是單獨的組件方式。也可以改為:

  1. super.onCreate(savedInstanceState);
  2. Button btn = new Button(this);
  3. btn.setText("TestButton");
  4. this.setContentVIEw(btn);

編譯運行,會有一個全屏的Button,當然這不是你想要的實用的界面.那我們就用Layout來布局

  1. super.onCreate(savedInstanceState);
  2. Button btn = new Button(this);
  3. btn.setText("TestButton");
  4. Button btn2 = new Button(this);
  5. btn2.setText("TestButton2");
  6. LinearLayout layout = new LinearLayout(this);
  7. layout.setOrIEntation(LinearLayout.VERTICAL);
  8. layout.addVIEw(btn);
  9. layout.addVIEw(btn2);
  10. this.setContentVIEw(layout);

編譯運行,你就可以看到了兩個上下排列的android Button,當然對於布局管理器的使用,做過PC 上AWT,SWING的人都不陌生,這裡就不贅述。

如何響應事件呢: 大家猜一猜?想必大家不難猜到,在AWT中,在手機的J2ME中,都是用Listener 來處理事件響應,android也未能脫俗。這與Blackberry,SymBian中的Observer是同一個道理。都是使用了設計模式的觀察者模式。下面來看一個能響應事件的例子。

  1. import android.app.Activity;
  2. import android.os.Bundle;
  3. import android.view.VIEw;
  4. import android.view.VIEw.OnClickListener;
  5. import android.widget.Button;
  6. import android.widget.LinearLayout;
  7. public class HelloActivity extends Activity implements OnClickListener {
  8. Button btn = null;
  9. Button btn2 = null;
  10. public void onClick(VIEw v) {
  11. if (v == btn)
  12. {
  13. this.setTitle("You Clicked Button1");
  14. }
  15. if (v == btn2)
  16. {
  17. this.setTitle("You Clicked Button2");
  18. }
  19. }
  20. @Override
  21. public void onCreate(Bundle savedInstanceState) {
  22. super.onCreate(savedInstanceState);
  23. btn = new Button(this);
  24. btn2 = new Button(this);
  25. btn.setText("TestButton1");
  26. btn2.setText("TestButton2");
  27. btn.setOnClickListener(this);
  28. btn2.setOnClickListener(this);
  29. LinearLayout layout = new LinearLayout(this);
  30. layout.setOrIEntation(LinearLayout.VERTICAL);
  31. layout.addVIEw(btn);
  32. layout.addVIEw(btn2);
  33. this.setContentVIEw(layout);
  34. }
  35. }

android Button操作步驟是:

一,生成兩個Button,配置Click事件監聽者為HelloActivity ,此類實現了OnClickListener接口。

二,放入布局,按布局顯示兩個Button

三,按下其中一個Button,生成Click事件,調用HelloActivity 的OnClick接口函數。

四,對於View參數的值,判斷是哪個View(Button)。改寫Activity的Titile內容。注意,可別去對比VIEw.getId(),缺省情況下,每個組件的Id值都為-1,除非人為設定Id值,用可視化編程時,為自動為其生成一個Id值。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved