日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
AndroidButton應(yīng)用法則

我們曾經(jīng)在其他文章中為大家詳細(xì)介紹了一些可視化編程以及基于界面的編程方法,那么今天大家將會了解到有關(guān)Android Button的具體應(yīng)用,以此更進(jìn)一步加深對界面編程的認(rèn)知程度。#t#

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

一,Android Button布局管理(Layout)

每一個界面組件都是View的子類,都可以單獨占用一個屏幕,但是真正的有用的界面都是這些組件的組合,在Android中都是用各種Layout來進(jìn)行布局管理,這與傳統(tǒng)的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. }  

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

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

編譯運行,會有一個全屏的Button,當(dāng)然這不是你想要的實用的界面.那我們就用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,當(dāng)然對于布局管理器的使用,做過PC 上AWT,SWING的人都不陌生,這里就不贅述。

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

 
 
 
  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. }  

 

Android Button操作步驟是:

一,生成兩個Button,配置Click事件監(jiān)聽者為HelloActivity ,此類實現(xiàn)了OnClickListener接口。

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

三,按下其中一個Button,生成Click事件,調(diào)用HelloActivity 的OnClick接口函數(shù)。

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


網(wǎng)頁標(biāo)題:AndroidButton應(yīng)用法則
URL鏈接:http://www.5511xx.com/article/dhpocjg.html