溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Android界面編程方法是什么

發(fā)布時間:2021-12-18 17:08:21 來源:億速云 閱讀:166 作者:iii 欄目:移動開發(fā)

本篇內(nèi)容主要講解“Android界面編程方法是什么”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“Android界面編程方法是什么”吧!

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

一,布局管理(Layout)

每一個界面組件都是View的子類,都可以單獨(dú)占用一個屏幕,但是真正的有用的界面都是這些組件的組合,在Android中都是用各種Layout來進(jìn)行布局管理,這與傳統(tǒng)的J2SE中的一些AWT,SWING界面方式基本相同,這里就不多說。

二,一個單獨(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)行,會有一個全屏的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)行,你就可以看到了兩個上下排列的按鈕,當(dāng)然對于布局管理器的使用,做過PC 上AWT,SWING的人都不陌生,這里就不贅述。

那如何響應(yīng)事件呢: 大家猜一猜?想必大家不難猜到,在AWT中,在手機(jī)的J2ME中,都是用Listener 來處理事件響應(yīng),Android也未能脫俗。這與Blackberry,Symbian中的Observer是同一個道理。都是使用了設(shè)計模式的觀察者模式。下面來看一個能響應(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、生成兩個Button,配置Click事件監(jiān)聽者為HelloActivity ,此類實(shí)現(xiàn)了OnClickListener接口。

2、放入布局,按布局顯示兩個Button

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

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

到此,相信大家對“Android界面編程方法是什么”有了更深的了解,不妨來實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI