47
VB.NET 視窗程式設計 進階應用:Android App NTU CSIE 講師:張傑帆

VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

  • Upload
    lykhanh

  • View
    228

  • Download
    2

Embed Size (px)

Citation preview

Page 1: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

VB.NET 視窗程式設計進階應用:Android App

NTU CSIE

講師:張傑帆

Page 2: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

使用VB語言建立Android App[兒童數學訓練]

Android與B4A的基礎

下載與安裝Basic4android

建立第一個Android App

GUI設計工具

B4A的Visual Basic語言

Page 3: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

Android與B4A的基礎

Android的基礎

Basic4android整合開發環境

Page 4: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

Android的基礎-行動作業系統

Android是行動裝置和網路上的一個熱門名詞,代表一套針對行動裝置開發的免費作業系統平台。目前Android並沒有統一的中文名稱,在台灣直接使用英文名稱Android(發音:['æ ndrɔid]),在大陸地區的譯名為安卓或安致。

Android是一套使用Linux作業系統為基礎開發的開放原始碼(Open Source)作業系統,最初主要是針對手機等行動裝置使用的作業系統,現在Android已經逐漸擴充到平板電腦、筆電和其他領域,例如:電子書閱讀器、MP4播放器、相機和Internet電視等。

Page 5: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

17-1-1 Android的基礎-

版本

Android版本 釋出日期 代號

1.5 2009/4/30 Cupcake(紙杯蛋糕)

1.6 2009/9/15 Donut(甜甜圈)

2.0/2.1 2009/10/26 Eclair(閃電泡芙,法式奶油夾心甜點)

2.2 2010/5/20 Froyo(冷凍乳酪)

2.3 2010/12/6 Gingerbread(薑餅)

3.0/3.1/3.2 2011/2/22 Honeycomb(蜂窩)

4.x 2011/10/19 Ice Cream Sandwich(冰淇淋三明治)

4.1/4.2 2012/6/28和10/29 Jelly Bean(雷根糖)

Page 6: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

Basic4android整合開發環境-簡介1

Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對Android平台開發的一套簡單且功能強大的快速應用程式開發工具(Rapid Application Development,RAD)。

Basic4android是一套整合開發環境IDE,可以讓Visual Basic語言的使用者直接使用BASIC語言來開發Android App,B4A能夠自動將開發者撰寫的BASIC程式碼編譯轉換成Java程式碼來建立原生的Android應用程式,換句話說,其執行效能並不會打折扣。

Page 7: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

Basic4android整合開發環境-簡介2

B4A使用的BASIC語言非常類似微軟Visual Basic語言(雖然不是百分之一百相同,不過差異不大,開發者可以很容易上手),只是額外增加很多物件的支援。在Android App的開發支援部分,B4A提供功能強大的GUI設計工具,可以直接使用類似Visual Studio表單設計工具來建立支援各種螢幕尺寸和解析度的使用介面,而不用自行撰寫XML文件來定義介面。

B4A內建功能強大的函數庫和外部模組,和其他廠商或個人開發的函數庫,可以讓我們輕鬆開發各種進階功能的Android App,包含:SQLite資料庫、GPS定位服務、藍芽、相機、XML剖析、Web服務、JSON、動畫、圖表和繪圖等Android App。

Page 8: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

Basic4android整合開發環境-版本

B4A開發的Android App支援所有版本的Android智慧型手機和平板電腦,而且不用任何權利金就可以發佈至Google Play。目前B4A共提供兩種版本(兩個版本的功能完全相同,其差異只有免費升級的期限不同),如下所示:

Basic4android企業版:提供2年免費升級服務,和Basic4android社群的完整存取權限。

Basic4android標準版:提供2個月免費升級服務,和Basic4android社群的完整存取權限。

Page 9: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

下載與安裝Basic4android

下載與安裝Basic4android

啟動與結束Basic4android

在行動裝置安裝B4A-Bridge

Page 10: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

下載與安裝Basic4android-說明

現在,我們就可以從網路下載與安裝Basic4android,和在行動裝置安裝B4A-

Bridge來建立Android App的開發環境。為了方便說明,本章並沒有安裝JDK和Android SDK元件,讀者需要擁有一台Android智慧型手機或平版電腦的實機,才能編譯、安裝和執行Android App。

Page 11: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

下載與安裝Basic4android-下載

Basic4android測試版可以在官方網站免費下載,其網址如下所示:

http://www.basic4ppc.com/index.html

Page 12: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

下載與安裝Basic4android-安裝

Basic4android測試版提供稱為「遠端編譯模式」(Remote Compilation Mode)的編譯模式,此模式可以讓我們的Windows作業系統電腦不用安裝JDK和Android SDK元件,就可以直接在行動裝置上編譯、安裝和執行Android App,當然,讀者一定需要擁有一台實機的Android智慧型手機或平版電腦,才能使用此編譯模式。

在本章為了簡化步驟,筆者準備直接使用遠端編譯模式來建立Android App,此時除了Windows作業系統的開發電腦需要安裝Basic4android,行動裝置也需要安裝對應的連接程式B4A-Bridge,詳見第17-2-3節的說明。

Page 13: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

啟動與結束Basic4android-啟動

在Windows 8作業系統開始頁面,按一下【Basic4android】應用程式磚或按二下桌面捷徑來啟動Basic4android。

Page 14: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

啟動與結束Basic4android-結束

離開Basic4android請執行「File>Exit」指令。

Page 15: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

在行動裝置安裝B4A-Bridge

連線Google Play安裝B4A-Bridge,如下:

Page 16: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

建立第一個Android App

建立第一個Android App

Basic4android的程式結構

Page 17: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

建立第一個Android App-步驟一:編輯Android App程式碼

在此步驟是在Main活動模組編輯修改Android App程式碼、指定套件名稱和儲存專案,如下圖所示:

修改程式碼

指定套件名稱

儲存專案

Page 18: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

建立第一個Android App-步驟二:勾選允許安裝非Google Play的App

在修改和完成專案編輯與儲存後,在編譯和執行專案前,因為我們是使用遠端編譯模式,所以需要設定智慧型手機允許安裝非Google Play

的Apps,如右圖所示:

Page 19: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

建立第一個Android App-步驟三:使用WiFi連接遠端行動裝置

在執行編譯、安裝與執行前,我們需要先連接遠端行動裝置,筆者是以執行Android

4.x版的智慧型手機和WiFi為例,如下圖所示:

Page 20: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

建立第一個Android App-步驟四:編譯、安裝和執行Android App

我們可以使用遠端編譯模式,直接在實機上編譯、安裝和執行Android App,執行「Project>Compile & Run」指令,或工具列最後藍色箭頭鈕,就可以看到「Compile & Debug」對話方塊顯示的編譯資訊。

Page 21: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

Basic4android的程式結構-活動的基礎

活動是Android應用程式與使用者互動的元件,可以用來定義使用者經驗,它也是唯一可以讓使用者看到的元件。Android應用程式可以建立一至多個活動來處理應用程式所需的不同互動。

一般來說,一個活動就是使用者在行動裝置上看到的單一螢幕畫面(大多是佔滿整個螢幕,不過也有可能是對話方塊),一個Android應用程式通常擁有一至多個活動,如同Web網站擁有多頁網頁。

Page 22: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

Basic4android的程式結構-程式結構

Sub Process_Globals

End Sub

Sub Globals

End Sub

Sub Activity_Create(FirstTime As Boolean)

End Sub

Sub Activity_Resume

End Sub

Sub Activity_Pause (UserClosed As Boolean)

End Sub

Page 23: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

Basic4android的程式結構-程式結構說明

Activity_Create(FirstTime As Boolean):這是當活動建立時呼叫的事件處理,表示活動目前在啟動狀態的前景,程序參數FirstTime是一個布林值,可以判斷是否是第一次建立,我們通常會在此程序載入GUI設計工具建立的版面配置檔,即使用介面。

Activity_Resume:此程序是在建立活動後馬上呼叫,或是從背景暫停狀態返回前景啟動狀態時呼叫。

Activity_Pause (UserClosed As Boolean):它是當活動從前景啟動狀態進入背景暫停狀態時呼叫,程序參數UserClosed是一個布林值,可以判斷是否是使用者操作才進入背景。

Page 24: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

Basic4android的程式結構-

事件驅動程式設計

B4A和Visual Basic一樣都是使用事件驅動程式設計,整個程式結構是在處理各種事件的事件處理程序,目前只有活動事件,當我們使用第GUI設計工具新增介面元件後,在Android稱為View視圖(即Visual Basic控制項),例如:新增一個名為myButton介面元件時(Android稱為View),就可以在Main活動模組建立處理Click事件的事件處理程序,如下所示:

Sub myButton_Click

Msgbox("按下按鈕!", "")

End Sub

Page 25: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

GUI設計工具-說明

對於使用Eclipse IDE和Android SDK的開發者來說,雖然也有視覺化開發工具,不過,因為功能不強,所以,大多數開發者仍然是使用XML文件,以XML標籤來定義版面配置(Layouts),即建立活動的使用介面。

Basic4android的GUI設計工具(Designer)是一套功能強大的視覺化工具,可以如同使用Visual Studio設計表單一般的建立Android App的使用介面(即版面配置),支援連接實機、模擬器或B4A抽象設計工具(Abstract Designer)來建立版面配置。

Page 26: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

GUI設計工具-步驟一:啟動Basic4android新增專案

我們可以從啟動Basic4android開始,新增本節範例的專案,專案名稱是【兒童數學訓練】,套件名稱是【ch17.gui.b4a.example】,如下圖所示:

Page 27: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

GUI設計工具-步驟二:使用B4A-Bridge連接行動裝置

在此步驟是連接測試執行的行動裝置,B4A

支援Android模擬器、使用USB連接實機,或使用B4A-Bridge以Wifi或藍芽連接行動裝置,筆者是使用B4A-Bridge以Wifi連接。

Page 28: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

GUI設計工具-步驟三:開啟GUI設計工具連接實機

在成功使用B4A-Bridge以Wifi將B4A連接行動裝置的智慧型手機後,我們就可以開啟GUI設計工具和連接實機來建立版面配置,如下圖所示:

GUI設計工具 Android實機

Page 29: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

GUI設計工具-步驟四:在GUI設計工具新增介面元件

在開啟GUI設計工具和成功連接實機後,我們就可以開始新增介面元件,在Android稱為視圖(View),如下圖所示:

Page 30: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

GUI設計工具-步驟五:在GUI設計工具設定介面元件的屬性

在完成介面元件的新增後,接著就可以設定各介面元件的屬性,請在「Abstract Designer」視窗選【Button1】,就可以在「Designer」視窗更改選擇介面元件的屬性,如右圖所示:

Page 31: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

GUI設計工具-步驟六:自動產生程式碼與儲存版面配置1

我們已經完成版面配置的介面設計,接下來需要儲存版面配置,在Designer執行「File>Save」指令,可以看到「Save

layout」對話方塊。

Page 32: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

GUI設計工具-步驟六:自動產生程式碼與儲存版面配置2

因為在活動模組的程式碼需要參考版面配置的元件,此時,我們可以使用Designer

的產生成員功能來建立,如下圖所示:

Page 33: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

GUI設計工具-步驟七:編輯事件處理程序的程式碼1

在Activity_Create事件處理程序使用Activity物件的LoadLayout方法載入之前建立的版面配置檔,即參數Main,然後指定Title屬性的標題文字,NewQuestion程序可以產生新數學問題,如下所示:

Sub Activity_Create(FirstTime As Boolean)

Activity.LoadLayout("Main")

Activity.Title = "兒童數學訓練"

NewQuestion

End Sub

Page 34: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

GUI設計工具-步驟七:編輯事件處理程序的程式碼2

新增NewQuestion程序,它是使用亂數產生2個1~10的數字來建立新數學問題,如下所示:

Sub NewQuestion

lblNumber1.Text = Rnd(1, 10)

lblNumber2.Text = Rnd(1, 10)

lblResult.Text = "請輸入答案..."

edtResult.Text = ""

End Sub

Page 35: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

GUI設計工具-步驟七:編輯事件處理程序的程式碼2

在btnAction_Click事件處理程序使用If Then/Else條件敘述來判斷按鈕的標題文字,如果有輸入就判斷答案是否正確,否則產生下一題數學問題,如下所示:

Sub btnAction_Click

If btnAction.Text = "回答" Then

If edtResult.Text = "" Then

Msgbox("沒有輸入答案...", "錯誤")

Else

If edtResult.Text = lblNumber1.Text + lblNumber2.Text Then

lblResult.Text = "答對了..."

btnAction.Text = "下一題"

Else

lblResult.Text = "答錯了, 再試一次.."

End If

End If

Else

NewQuestion

btnAction.Text = "回答"

End If

End Sub

Page 36: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

GUI設計工具-步驟八:編譯與執行Android App

請執行「Project>Compile &

Run」指令,或工具列最後藍色箭頭鈕,可以看到「Compile & Debug」對話方塊顯示的編譯資訊。等到完成編譯,請回到智慧型手機安裝和開啟應用程式可以看到執行結果,如右圖所示:

Page 37: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

B4A的Visual Basic語言-資料型態

因為Android原生開發語言是Java語言,所以B4A支援的資料型態也是直接源於Java語言,這些型態都是物件,其說明如下表所示:

資料型態 說明 範圍

Boolean 布林 False或True

Byte 位元組8Bits -128 ~ 127

Short 短整數16Bits -32768 ~ 32767

Int 整數16Bits -2147483648 ~ 2147483647

Long 長整數64Bits -9223372036854775808 ~ 9223372036854775807

Float 單精度浮點數32Bits 1.4E-45 ~ 3.4028235E38

Double 雙精度浮點數64Bits 2.2250738585072014 E -308 ~

1.7976931348623157 E 308

Char 字元 N/A

String 字串 N/A

Page 38: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

B4A的Visual Basic語言-

變數宣告

B4A是使用Dim關鍵字來宣告變數,As關鍵字指定資料型態,使用「=」號指定變數的初值,如下所示:

Dim Sum As Float

Dim Capital, Interest, Rate As Double

Dim i = 0, j = 2, k = 15 As Int

Dim name = "Joe" As String, rate = 1.1 As

Double, flag = True As Boolean

Page 39: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

B4A的Visual Basic語言-陣列

B4A陣列也是使用Dim關鍵字來宣告,如下所示:

Dim Names(10) As String

上述程式碼宣告10個元素的Names陣列,在括號中是元素數(與Visual Basic不同),除了可以使用文字值來指定外,也可以使用變數來指定陣列尺寸,其索引值是從0開始,所以範圍是0~9。

B4A陣列的初值需要使用Array關鍵字來宣告,如下所示:

Dim Grade() As Int

Grade = Array As Int(89, 76, 61)

Page 40: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

B4A的Visual Basic語言-

運算子

B4A算術運算子不支援Visual Basic的整數除法「\」,指數運算子則是使用Power()

函數取代,如下所示:

123 即 Power(12, 3)

在比較運算子部分,B4A不支援Is、IsNot和Like運算子。邏輯運算子支援Or、And和Not,其中Not需要使用括號,即Not ()。

Page 41: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

B4A的Visual Basic語言-

條件敘述1

B4A條件敘述支援和Visual Basic相同的If/Then和If Then/Else,只有If Then/ElseIf多選一條件敘述不同,在B4A是分開的Else If,如下所示:

If condition1 Then

Else If condition2 Then

Else

End If

Page 42: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

B4A的Visual Basic語言-

條件敘述2

另一種Select Case/End Select多選一條件敘述也不同,B4A只需Select/End Select,不用加上Case的Select Case,如下所示:Select Action

Case Activity.ACTION_UP

Case Activity.ACTION_DOWN

Case Activity.ACTION_MOVE

End Select

Page 43: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

B4A的Visual Basic語言-

迴圈結構

在B4A迴圈部分支援For/Next(Next關鍵字後不支援加上計數器變數,例如:Next i)、For Each In、Do While/Loop和Do Until/Loop,但不支援後測式迴圈Do/Loop While和Do/Loop Until。

B4A支援Continue繼續迴圈和跳出迴圈,不過,B4A只需Exit和Continue關鍵字;Visual Basic需要加上Exit/Continue Do或Exit/Continue For。

Page 44: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

B4A的Visual Basic語言-

錯誤處理敘述

B4A支援和Visual Basic相同的Try/Catch/End Try,不過,不支援Finally

程式區塊。

Page 45: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

B4A的Visual Basic語言-

程序、函數和方法1

B4A不論函數、程序和方法都是使用Sub宣告(沒有Function關鍵字),不過,在Sub

程序一樣可以使用Return關鍵字來傳回值,如下所示:

Sub CalInterest(Capital As Double, Rate As

Double) As Double

Dim Amount As Double

Amount = Capital * Rate / 100

Return Amount

End Sub

Page 46: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

B4A的Visual Basic語言-

程序、函數和方法2

如果Sub宣告的程序沒有參數,在宣告時不需加上括號,呼叫時也不需使用括號(B4A

編譯器會誤認為是陣列),如下所示:

Sub NewQuestion

End Sub

上述程序在呼叫時只需使用NewQuestion,不可以使用NewQuestion(),如下所示:

NewQuestion

Page 47: VB.NET 視窗程式設計homepage.ntu.edu.tw/~d02922022/VB/ppt/Part 3/15 Android App.pdf · Basic4android整合開發環境-簡介1 Basic4android(B4A)是以色列Anywhere Software公司開發的整合開發環境,這是針對

本章結束Take a Break …..