App-Inventor-2-指令中文化-2.docx_第1页
App-Inventor-2-指令中文化-2.docx_第2页
App-Inventor-2-指令中文化-2.docx_第3页
App-Inventor-2-指令中文化-2.docx_第4页
App-Inventor-2-指令中文化-2.docx_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

汕头大学计算机教学中心App Inventor指令中文化键入文档副标题Fred2014.3在此处键入文档摘要。摘要通常为文档内容的简短概括。在此处键入文档摘要。摘要通常为文档内容的简短概括。目录在Windows 下架設 App Inventor 2伺服器1軟體需求1建置2App Inventor 2 指令中文化控制 Control 指令區4if、if/else與if / else if4for each (number)5for each (item) in list5While5if/else (呼叫型)5Do5evaluate but ignore5open another screen5open another screen with start value5get start value5close screen6close screen with value6close application6get plain start text6close screen with plain text6App Inventor 2 指令中文化邏輯 Logic 指令區7true7false7not7= 與 !=7and8Or8App Inventor 2 指令中文化數學 Math 指令區9number9=、!=、=9+101010/1010random integer10random fraction10random set seed10min/max10sqrt11abs11- (negate)11log11exp11round11ceiling11floor11modulo12remainder12quotient12sin、cos、tan、asin、acos、atan12atan212convert radians to degrees12convert degrees to radians12format as decimal13is a number?13App Inventor 2 指令中文化文字 text 指令區14text14join14length14is empty14compare texts(、=)14trim15upcase /downcase15starts at15contains15split at first15split at first of any15split16split at any16split at spaces16segment16replace all16App Inventor 2 指令中文化清單 List 指令區17create empty list17make a list17add items to list17is in list?18length of list18is list empty?18index in list18pick random item18select list item18insert list item18replace list item18remove list item18append to list19copy list19is a list?19list to csv row19list to csv table19list from csv row19list from csv table19lookup in pairs(請參閱右圖)20App Inventor 2 指令中文化顏色 Color 指令區21隨機改變顏色21拉動控制條改變顏色21basic color blocks 基礎顏色方塊21make color 產生顏色21split color 拆開顏色21簡易範例22App Inventor 2 指令中文化變數 Variables指令區23initial global (name) to23Get23set () to23initialize local (name) to in (do)24initialize local (name) to in (return)24App Inventor 2 指令中文化副程式 procedure指令區25procedure do25procedure result(有回傳值)25傳參數給副程式2526在Windows 下架設 App Inventor 2伺服器=| 在Windows架設AppInventor伺服器 |=軟體需求=本文各軟體版號以括弧註解爲準1. Oracle Java Development Kit(1.7.0 update 45)2. Apache Ant(1.9.2)在Apache Ant官方網站的下載頁面(/bindownload.cgi),點選Current Release of Ant章節下面的apache-ant-1.9.2-bin.zip文字下載檔案。3. Git for Windows(1.8.4-preview20130916)Git一種版本控制工具,可用來協調多人程式專案的工作,有多個著名開源軟體專案使用Git管理開發工作,比如Linux核心專案。AppInventor專案也使用Git。編譯AppInventor的過程會用到Git。進入Git官方網站(/),右手邊有下載連結。4. Google AppEngine SDK for Java(1.8.8)Google AppEngine是Google提供的網站平臺,目前提供Python、Java、Go三種程式語言的版本。AppInventor是基於Google AppEngine框架上開發。官方下載頁面(/appengine/downloads)的Google App Engine SDK for Java章節下面有連結。5. AppInventor原始碼AppInventor在GitHub的專案頁面(/mit-cml/appinventor-sources)右下有一個Download ZIP的下載連結。各個檔案下載完成之後,呈現目錄列表如下。在開始建置AppInventor伺服之前,先安裝jdk-7u45-windows-i586.exe和Git-1.8.4-preview20130916.exe,然後解壓appengine-java-sdk-1.8.8.zip和apache-ant-1.9.2-bin.zip到同目錄。. jdk-7u45-windows-i586.exe Git-1.8.4-preview20130916.exe apache-ant-1.9.2-bin.zip appengine-java-sdk-1.8.8.zip appinventor-sources-master/另外開啓建置之前,必須把ant和javac程式的位置加到環境變數的PATH。建置=1. 編譯AppInventor伺服器 a. 開啓Git Bash,切到appinventor-sources-master/appinventor目錄下面,當下目錄會看到build.xml檔案。 b. 執行ant指令,開始編譯程式,過程可能要花10分鐘左右。 c. 編譯完成後,如果看到BUILD SUCCESSFUL文字,表示編譯成功。2. 執行AppInventor伺服器 a. 續前步驟,在同目錄下用Git Bash執行以下指令,填入伺服器開啓服務的埠口,比如8888;是伺服器的位置,通常是一個IP,如果沒有指定特定IP,一般是填入。/bin/dev_appserver.sh -port= -address= appengine/build/war 範例: /c/appengine-java-sdk-1.8.8/bin/dev_appserver.sh -port=8888 -address= appengine/build/war3. 執行Build Server a. AppInventor伺服器提供打包程式下載到手機的服務,必須透過Build Server達成。也可以選擇不啓動Build Server,變成是AppInventor會缺少打包程式功能。若要啓動Build Server,續上步驟同個目錄,切換到當下目錄的buildserver,執行ant RunLocalBuildServerApp Inventor 2 指令中文化控制 Control 指令區 if、if/else與if / else if測試指定條件test。若為true則執行以下動作,反之則跳過此段。請不要忽視左上角那個藍色小方塊,神奇的地方在這裡,它整合了if/else與if / else if等功能。請如下圖操作即可自行製作各種判斷結構。 for each (number)根據指定範圍之整數個數來決定do的執行次數,可自由設定每次累加的數字step。您可使用該變數名稱來取得它的值。 for each (item) in list根據指定清單的元素數目來決定do的執行次數。您可使用該變數名稱來取得它的值。 While測試指定敘述。若為true則重複執行以下動作,反之則結束此段。 if/else (呼叫型)直接把 if / else 當作指令來呼叫。若為true則執行then區塊內容,反之則則執行else區塊內容。 Do您可以將本指令當作 procedures 的代替品,在do 區塊中放入您所要執行的指令,還可以回傳一個 result。 evaluate but ignore您可以將本指令當作轉接頭來使用。把要執行的指令接在右邊,要呼叫副程式或是 if / else 都可以。您所要的內容都會執行,但回傳值會自動被忽略,這在某些情況下可能正好符合您的需求(有時候不一定允許回傳值)。 open another screen啟動另一個畫面,填入要啟動的畫面名稱即可。 open another screen with start value啟動另一個畫面,填入要啟動的畫面名稱即可。您可藉由本指令將A畫面的某些計算結果傳給B畫面。 get start value取得當現在畫面啟動時所接收到的value。 close screen關閉現在的畫面。 close screen with value關閉螢幕,並指定回傳結果result。close application結束程式。 get plain start text當現在畫面被啟動時,取得呼叫端所傳來的純文字內容。如果沒有值的話,本指令結果為空字串。如果您的app 有多個畫面,請使用get start value指令而非本指令。 close screen with plain text關閉現在的畫面並傳送一個純文字內容給呼叫端。如果您的app 有多個畫面,請使用close screen with value指令而非本指令。App Inventor 2 指令中文化 邏輯 Logic 指令區 true布林常數的真(true)。用來設定元件的布林(boolean)屬性值,或用來表示某種狀況是否成立。 false布林常數的假(false)。用來設定元件的布林屬性值,或用來表示某種狀況是否不成立。 not邏輯運算的 not。輸入 true 或條件判斷為 true 則回傳false,反之回傳 true。以下兩個指令位於同一選單中。 = 與 !=綜合性邏輯相等運算符。可判斷數字、字串與清單的相等或不相等。例如:兩個數字是否相等(例如:1=1.0)。兩個字串是否相等,包括大小寫。例如 banana 不等於Banana。若兩個清單的長度相同且對應元件相等則相等。以下兩個指令位於同一選單中。 and測試是否所有的敘述皆為真。當您插入第一個 test 項目時會自動跑出第二個插槽。測試順序由上到下,測試過程中若任一條件已知為假則停止測試。若無任何敘述則回傳 true。 Or測試所有敘述中是否至少有一者為真。當您插入第一個test項目時會自動跑出第二個插槽。測試順序由上到下,測試過程中若任一條件已知為真則停止測試。若無任何敘述則回傳 false。App Inventor 2 指令中文化 數學 Math 指令區感謝下拉式選單,數學指令變得清爽多了 number指定一個數字常數。以下六個指令位於同一選單中。 =、!=、=比較兩個指定數字的等於、不等於、小於、小於等於、大於與大於等於關係。如果滿足回傳true,否則回傳false。- +回傳兩個指定數字的和。 回傳兩個指定數字的差。 回傳兩個指定數字的積。 /回傳前者除以後者的商。例如,1除以3為 0.3333。 回傳 a 的 b次方,例如 2 3 = 8 random integer回傳一個介於指定數字之間的隨機整數,包含上限(to)與下限(from)。參數由小到大或由大到小不會影響計算結果。 random fraction回傳一個介於0和1之間的隨機小數。 random set seed產生可重複的隨機數序列。您可設定 seed 來產生相同序列的隨機數。這在測試會用到隨機數的程式中非常好用。以下兩個指令位於同一選單中。 min/max回傳指定數字中最小/最大者。- sqrt回傳指定數字的平方根。 abs回傳指定數字的絕對值。 - (negate)回傳指定數字的相反數。 log回傳指定數字的自然對數運算結果。 exp回傳e (2.71828.)的指定次方運算結果。 round回傳指定數字四捨五入到整數位的運算結果。 ceiling回傳指定數字無條件進位到整數位的運算結果。 floor回傳指定數字無條件捨去到整數位的運算結果。-以下三個指令位於同一選單中。 modulo當指定數字皆為正數時,Modulo(a,b)計算結果與remainder(a,b) 相同。一般公式如下:對所有a與b而言,(floor(a/b) b) + modulo(a,b) = a。例如modulo(11, 5) 為1;modulo(-11, 5) 為4;modulo(11, -5) 為-4;modulo(-11, -5) 為-1。Modulo(a,b) 永遠與b同號,但remainder(a,b) 則永遠與a同號。 remainderremainder(a, b)指令可回傳第一個數a除以第二個數b的餘數(remainder)。例如 For example, remainder(11,5)為1;remainder(-11, 5) 為-1;remainder(11, -5) 為1;remainder(-11, -5) 為-1。 quotientquotient(a,b)指令回傳第一個數a除以第二個數b的商,但只取整數部分,小數點以後忽略不計。以下六個指令位於同一選單中。 sin、cos、tan、asin、acos、atan回傳指定數字的正弦、餘弦、正切、反正弦、反餘弦與反正切函數值,單位:度。- atan2回傳y/x的反正切函數值。以下兩個指令位於同一選單中。 convert radians to degrees將弧度轉換為角度。 convert degrees to radians將角度轉換為弧度。 format as decimal將原數字轉換為指定位數之小數。指定小數位數不能為負數。若原小數位數過多則四捨五入,反之則補0。 is a number?指定物件如果為數字,回傳true,反之回傳false。App Inventor 2 指令中文化 文字 text 指令區 text指定一個字串常數。 join將兩個指定字串合成一個新字串。對於此指令,數字也被視為字串。例如:用 join 指令來合成1+1及 23則回傳26 (2 和6合成)。註:AI Classic 的make text 在此與 join 指令合併 length回傳指定字串的長度。 is empty檢查指定字串是否為空。以下三個指令位於同一指令之選單中 compare texts(、=)回傳第一個字串text1 在字母排列上與第二個字串 text2 之小於、大魚或等於之結果。若兩者的第一個字母相同則比較字串長度。大寫字母比小寫字母優先。等於:回傳第一個字串text1與第二個字串text2是否相等。請注意如果要比較的字串中含有數字,則數學上的=與字串上的text=結果是不一樣的。如果兩個textbox,其中一個內容為123,另一個是0123,則數學上的比較結果為相等,但字串比較結果則不相等。大於:回傳第一個字串text1是否在字母排列上比第二個字串text2大。若兩者的第一個字母相同則比較字串長度。大寫字母比小寫字母優先。小於:回傳第一個字串text1是否在字母排列上比第二個字串text2小。- trim刪除指定字串的頭尾空格。以下兩個指令位於同一指令之選單中 upcase /downcase將指定字串全部轉為大寫/小寫。 starts at回傳指定子字串在指定字串中的位置,找不到則回傳0。例如子字串ana在Havana中的位置為4。請注意!在一般程式設計語言中,陣列的第一個元素編號為0,但AppInventor中的第一個元素編號為1。 contains若指定子字串出現在指定字串中則回傳真,反之則回傳假。以下四個指令位於同一指令之選單中 split at first將字串從指定分割點(at)第一次出現的地方分成兩個子字串,並回傳一個包含這兩個子字串的清單,一個是從原字串第一個字母到分割點前一個字母,另一個則是分割點後一個字母到原字串結尾。例如將字串apple,banana,cherry,dogfood使用逗號,來分割,回傳結果會是兩個子字串:第一個子字串為apple,第二個子字串為banana,cherry,dogfood。請注意逗號,這個分割點不包含在任何一個子字串中。 split at first of any將字串從指定分割點(at) 分割成兩個子字串,並回傳一個包含這兩個子字串的清單。 split將字串從指定分割點切割,並以清單回傳切割結果。例如將字串one,two,three,four從逗號,分割的結果是(one two three four)這個清單。將字串 one-potato,two-potato,three-potato,four從at -potato分割的結果是(one two three four) 這個清單。 split at any將字串從清單項目(at)來切割,意即使用清單項目來切割字串,並回傳結果。例如將字串appleberry,banana,cherry,dogfoodwith以一個具有兩個項目的清單來切割,第一個項目為逗號,,第二個項目為rry,切割結果為(applebe banana che dogfood)這個字串。- split at spaces將指定字串在所有空格處分開,以清單輸出結果。 segment將原字串從指定位置start開始並指定長度length後產生子字串。 replace all將原字串以新的子字串取代後回傳新的字串。App Inventor 2 指令中文化 清單 List 指令區App Inventor中的list就是一般程式中的陣列,所以相關操作方法皆與陣列非常相似。但請注意App Inventor的List編號從1開始,陣列編號則從0開始。 create empty list產生一個空的清單。請點選藍色方塊來調整要插入的 item數量。 make a list新增一個清單,並自行指定其元素(item)。若您未指定任何元素,則此為一空清單,您可以之後再加入元素。請點選藍色方塊來調整要插入的 item數量。 add items to list將指定內容item接在指定清單的後面。本指令與 append to list指令的差別在於 append to list指令是將兩個清單組起來,而 add items to list指令是將要新增的內容當作個別參數來操作。請點選藍色方塊來調整要插入的 item數量。- is in list?若指定內容thing存在於清單中回傳true,反之回傳false。注意:若一清單中含有子清單,則子清單的元素不包含在原清單中。例如清單(1 2 (3 4)的元素為1、 2以及子清單(3 4);單獨3或4並非這個list的元素。 length of list回傳清單的長度,也就是元素數目。 is list empty?如果清單為空,回傳true;反之回傳false。 index in list指定項目於清單中的位置編號。 pick random item從清單中隨機取得任一項目。 select list item取得清單list的指定位置index元素內容,第一個清單元素位置為1。 insert list item將指定內容item插入清單的指定位置。 replace list item將清單的指定位置元素以新的內容replacement取代。 remove list item從清單中刪除指定位置的元素。 append to list將第一個清單list1與第二個清單list2組成一個新的清單。 copy list複製清單,如果清單包含子清單也會一併複製。 is a list?如果指定內容格式為清單,回傳true;反之回傳false。 list to csv row將清單轉換為CSV表格中的列row,並以CSV(comma-separated value)格式回傳。Row中的每一個項目就是一個欄位(field)。回傳的文件結尾不會包含換行符號。 list to csv table將清單以列優先的方式轉換為CSV表格,並以CSV格式回傳。回傳清單中的項目是另一個清單,代表CSV表格中的列,每列中的項目則是該列的欄位。列中的項目是以逗號分隔,列彼此之間則是以CRLF (rn)符號分隔。 list from csv row將CSV文件中的列解析並回傳一個清單,清單內容就是該列的各個欄位。不同列將以n或 CRLF (rn)符號來區隔。如果列中的文字是以新的一列或是CRLF符號結束,這樣的語法是允許的。 list from csv table將CSV表格解析並回傳一個清單,清單內容代表不同的列(再包含不同的欄位)。不同列將以n或 CRLF (rn)符號來區隔。 lookup in pairs(請參閱右圖)在一個以清單來呈現的類字典架構中來找尋資料。這指令需要三個輸入:key,一個清單 pairs 以及結果 notFound。在此的 pairs 需為內容為一對對的清單,也就是該清單的內容實際上是另一個兩元素的清單。本指令會先尋找清單中的第一對,其第一個元素就是 key,並回傳第二個元素。例如,清單(a apple) (d dragon) (b boxcar) (cat 100)中,如果尋找 b 就會回傳 boxcar。如果清單中沒有這樣的一對,本指令會回傳 notFound 代表沒有找到。如果 pairs 並非一對對的清單,則本操作會產生錯誤。App Inventor 2 指令中文化 顏色 Color 指令區App Inventor 2在基礎顏色設定上更豐富了,當然您也可以本頁最下方的範例來自行產生顏色。隨機改變顏色拉動控制條改變顏色basic color blocks 基礎顏色方塊基礎顏色指令,一個直接可看到顏色的小方塊,就直接代表了該指令的顏色。當您點擊方塊中央的顏色時,會有一個包含了 70 種顏色快顯視窗,供您自由選擇。點擊新顏色之後,原本的顏色就被換掉了。 make color 產生顏色make color 指令接受的參數格式為一個 3或4個元素的數字清單。清單中的數字就為 RGB 碼,也就是在網路上產生顏色的格式。RGB 色表請點我。三個數字分別代表了紅、綠與藍色的強度。第四個數字可加可不加,代表是飽和度(alpha,)。alpha預設值為 100。您可調整各參數來看看顏色變化的效果。 split color 拆開顏色本指令功能與 make color 相反。它會將顏色(顏色方塊、包含顏色的變數或某個元件的顏色屬性)拆開,並回傳一個包含該顏色 RGB 值的清單。 簡易範例這是一個簡單的範例說明 App Inventor 的顏色運作模式,程式碼在本頁下方。請參考App Inventor 官方提供的色碼表,您會發現所有的顏色都是一個負整數。運算公式是這樣的:color = R + opacity * 256color = G + color * 256color = B + color * 256color = color - top (168)因此如果我們的 RGB透明度設為 (160, 32, 240 , 255)時,計算結果就是 -6283024,是漂亮的正紫色喲!執行結果在右邊。您可以延伸閱讀 隨機改變顏色 這個範例。如果覺得很麻煩的話,也可以直接使用 make color 指令直接指定 R

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论