本篇內(nèi)容主要講解“Android界面編程方法是什么”,感興趣的朋友不妨來看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“Android界面編程方法是什么”吧!
我們提供的服務(wù)有:網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站設(shè)計(jì)、微信公眾號(hào)開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、交口ssl等。為1000+企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的交口網(wǎng)站制作公司
Android 界面編程有兩種基本的方法,一種是在代碼中,動(dòng)態(tài)創(chuàng)建一個(gè)個(gè)組件,及把這些組件用Layout來進(jìn)行組合成復(fù)雜的界面展現(xiàn)。一種是用圖形化的方式來編寫 布局Layout,這些布局被保存在XML文件中,會(huì)編譯成資源,被程序中的Activity來加載(setContentView()), 再通過findViewById方式來獲得每一個(gè)界面組件的引用進(jìn)行操作。對(duì)于大多數(shù)人來說,喜歡最直觀的方式,既代碼中動(dòng)態(tài)生成的方式。
一,布局管理(Layout)
每一個(gè)界面組件都是View的子類,都可以單獨(dú)占用一個(gè)屏幕,但是真正的有用的界面都是這些組件的組合,在Android中都是用各種Layout來進(jìn)行布局管理,這與傳統(tǒng)的J2SE中的一些AWT,SWING界面方式基本相同,這里就不多說。
二,一個(gè)單獨(dú)的界面元素:
在前面說到Hello World例子中,講過這樣一段代碼。在Activity中.
public class HelloActivity extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); TextView tv = new TextView(this); tv.setText("Hello, World!"); this.setContentView(tv); }
這里并沒有用到Layout,這就是單獨(dú)的組件方式。也可以改為:
super.onCreate(savedInstanceState); Button btn = new Button(this); btn.setText("TestButton"); this.setContentView(btn);
編譯運(yùn)行,會(huì)有一個(gè)全屏的Button,當(dāng)然這不是你想要的實(shí)用的界面.那我們就用Layout來布局
super.onCreate(savedInstanceState); Button btn = new Button(this); btn.setText("TestButton"); Button btn2 = new Button(this); btn2.setText("TestButton2"); LinearLayout layout = new LinearLayout(this); layout.setOrientation(LinearLayout.VERTICAL); layout.addView(btn); layout.addView(btn2); this.setContentView(layout);
編譯運(yùn)行,你就可以看到了兩個(gè)上下排列的按鈕,當(dāng)然對(duì)于布局管理器的使用,做過PC 上AWT,SWING的人都不陌生,這里就不贅述。
那如何響應(yīng)事件呢: 大家猜一猜?想必大家不難猜到,在AWT中,在手機(jī)的J2ME中,都是用Listener 來處理事件響應(yīng),Android也未能脫俗。這與Blackberry,Symbian中的Observer是同一個(gè)道理。都是使用了設(shè)計(jì)模式的觀察者模式。下面來看一個(gè)能響應(yīng)事件的例子。
import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.LinearLayout; public class HelloActivity extends Activity implements OnClickListener { Button btn = null; Button btn2 = null; public void onClick(View v) { if (v == btn) { this.setTitle("You Clicked Button1"); } if (v == btn2) { this.setTitle("You Clicked Button2"); } } @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); btn = new Button(this); btn2 = new Button(this); btn.setText("TestButton1"); btn2.setText("TestButton2"); btn.setOnClickListener(this); btn2.setOnClickListener(this); LinearLayout layout = new LinearLayout(this); layout.setOrientation(LinearLayout.VERTICAL); layout.addView(btn); layout.addView(btn2); this.setContentView(layout); } }
步驟是:
1、生成兩個(gè)Button,配置Click事件監(jiān)聽者為HelloActivity ,此類實(shí)現(xiàn)了OnClickListener接口。
2、放入布局,按布局顯示兩個(gè)Button
3、按下其中一個(gè)Button,生成Click事件,調(diào)用HelloActivity 的OnClick接口函數(shù)。
4、對(duì)于View參數(shù)的值,判斷是哪個(gè)View(Button)。改寫Activity的Titile內(nèi)容。注意,可別去對(duì)比View.getId(),缺省情況下,每個(gè)組件的Id值都為-1,除非人為設(shè)定Id值,用可視化編程時(shí),為自動(dòng)為其生成一個(gè)Id值。
到此,相信大家對(duì)“Android界面編程方法是什么”有了更深的了解,不妨來實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!