freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

android平臺上的計算器設計方案(參考版)

2025-05-16 06:56本頁面
  

【正文】 (a) (b)(c) (d)圖 59 總 結
。 } finally { vbegin = true。 } catch(ArithmeticException e) { (Div Number CAN NOT a ZERO!)。 preopt = opt。 } else if((+)) { ………………………………… } else { throw new ArithmeticException()。 if(vbegin) preopt = opt。 vbegin = false。最后,當?shù)诙屋斎霐?shù)據(jù)的時候,將會數(shù)據(jù)存到temp,再根據(jù)上次輸入的符號進行運算,然后將結果保存在temp,如果按鍵“=”,則會將將結果輸出,如果是其她的符號,則會進行相應的運算,代碼中的實現(xiàn)如下:private void wtNumber(String str) { if(vbegin) (str)。 vbegin = true。 vbegin = true。 if((Bksp) == 0) { if(() 1) ((0, () 1))。 其次,對內容的操作。private EditText et_led。計算模塊是整個系統(tǒng)的主體部分。具體設計如圖48所示:圖58 界面具體設計 計算模塊的實現(xiàn)計算模塊則主要描述了計算器的整體,實現(xiàn)了計算器的界面,定義了用戶單擊的處理辦法,通過定義的處理辦法來完成用戶的操作命令,實現(xiàn)用戶的計算要求,這些計算要求包括了數(shù)值的輸入,小數(shù)點的輸入,正負號的輸入,記憶相關功能的完成,加、減、乘、除等各種計算功能的完成,運算符的替換,初始化系統(tǒng)等等。在我的設計中,將綜合使用LinearLayout、TableLayout、EditText和TextView等UI布局和控件來實現(xiàn)計算器的界面。這樣雖然和使用高級的方法相比速度上可能有點慢,但是由于時間相差的不是很多,在用戶的正常使用中是不會有所感覺的。然后聲明了顯示區(qū)的畫法,畫法中包括了顯示區(qū)的兩個矩形組成的顯示框,顯示框的顏色和大小以及顯示框中顯示的文字所使用的字體,還有文字在顯示框中的位置。一般情況下都會選擇差不多的字體,所以此處選擇的字體和鍵盤上顯示的字體其實是一樣的,但是事實上系統(tǒng)中進行了兩次聲明,即邏輯上這是兩種不同的字體,以及設置字符串text為空。具體設置如下代碼:EditText android:id=+id/ed_led android:layout_width=fill_parent android:layout_height=wrap_content android:gravity=left android:text= android:textSize=37px android:layout_marginBottom=20px android:layout_marginLeft=10px android:layout_marginRight=10px android:editable=false android:cursorVisible=false android:layout_weight=1 /顯示區(qū)中使用的是基于增強型的圖形用戶界面EditText,利用此類的功能,在顯示模塊中完成了以上設置。在整體界面的設置中,我還為各個按鍵的設置中我還設置了字體的大小,字體的顏色,分別用下列語句實現(xiàn):字體大小:android:textSize=25dip字體顏色:android:textColor = 7f0000界面背景:android:background=888FFF(2)顯示模塊,主要描述了計算器的顯示區(qū),即該區(qū)域用于顯示用戶輸入的數(shù)據(jù)以及最終的計算結果和一些其她信息。在本項目中,在觸屏上提供了各種功能的按鍵,分別是C,0,1,2,3,4,5,6,7,8,9,+,,247。當然,我們每個人可以根據(jù)自己的喜好來進行設計,根據(jù)我個人的喜好,我最終設計出來的計算器界面如圖47所示:圖57 界面設計結果從上圖中,我們可以很直觀的看到,從上到下分別是:顯示模塊、輸入模塊、計算模塊。,代碼為:string name=app_name計算器/string。圖54 不同分辨率圖標的放置drawablehdpi中放置分辨率最高的圖標,drawablemdpi中放置分辨率中等的圖標,drawableldpi中放置分辨率最低的圖標。本人在網上尋找了一個圖標作為計算器應用的圖標,圖標如圖43所示。c) 注冊構件到頁面布局文件中。自定義組件的步驟是:a)創(chuàng)建類。(3)用戶自定義頁面組件由于Android應用程序中的用戶界面都是View及View的各個子類如Button,TextView等子View及各種容器ViewGroup如LinearLayout、RealtiveLayout等ViewGroup構成。titleView = new TextView(this)。canvasview = new CanvasView(this)。頁面的各種組件的創(chuàng)建及布局在代碼中手動構建過程如下:AbsoluteLayout= new AbsoluteLayot(this)。這種方式和XML定義是完全等價的。缺點是:XML文件構建的界面已在配置文件中實現(xiàn),無法在系統(tǒng)運行時動態(tài)更新頁面。b) 用戶界面與業(yè)務邏輯完全分離,降低了系統(tǒng)界面與業(yè)務邏輯的耦合性。在layout文件夾下定義自己的XML頁面,如計算器屬性界面的實現(xiàn)如下所示。常用的方式是用圖形化的方式來編寫布局Layout,這些布局保存在XML文件中,然后編譯成資源,在程序中Activity通過setContentView()方法來加載,然后通過findViewByld()方式來獲得每一個界面組件的引用。每種方式各有自己的優(yōu)缺點及使用環(huán)境,下面將結合本文界面實現(xiàn)逐一介紹。(2)直接用代碼生成用戶界面。因此構建良好的用戶界面是很重要的。可以非常精確地描述寬和高,同時view可以自行調整到適應內容大小,或者適應容器大小。圖52Android樹形界面所有的viewgroup都包括寬和高。這個樹形結構可以構建各種Android程序界面,并且可以使用Android的預定義widget和layout或者自定義的view類型來構建。Layout可以為一組view構建一個結構。ViewGroup是一個特殊的view對象,它可以裝載和管理一組下層的view其她viewgroup??捎玫降膚idget包括TextView,EditText,InputMethod,Botton,RadioButton,Checkbox和ScrollView等。View類作為一個基類,為widget(窗體部件)服務,widget是一組用于繪制交互屏幕元素的完全實現(xiàn)子類。它是一個用來存儲屏幕上特定的一個矩形內布局和內容屬性的數(shù)據(jù)結構。Android應用程序界面需要使用view和viewgroup一起構造。 構建Android應用程序用戶界面 Android應用程序界面組件Android應用程序的基礎功能單元是Activity。這些文字或數(shù)值資源對放在,resources/resources為開頭結尾的標簽對xml文件中。Values文件夾下存放的是本系統(tǒng)所用到的文字及數(shù)字資源,這些資源以鍵值得形式存放。Layout文件夾下面存放了本文所用到的所有用戶界面的XML布局文件。注意::android=。Name屬性指定了實現(xiàn)這Activity的Activity子類。如果一個Activity沒有對應的標記,她將不能被運行。Manifest文件的主要功能是聲明應用程序的組件。因此這種設計具有很好的版本適應性及兼容性,大大提高了用戶體驗。Drawble包括drawablehdpi,drawableldpi,drawablemdpi三個文件夾,是為了適應Android手機系統(tǒng)不同的屏幕大小而設計的。其中anim文件夾下存放的是界面動畫效果。 res是存放整個系統(tǒng)中所用到的所有資源,此文件夾包含五個文件夾。這java文件是整個項目的代碼。圖51項目的目錄結構圖其中src和gen文件夾下是整個項目的源文件,所有的java代碼都在這兩個文件夾下。然后加你存放源文件、資源文件、頁面文件等各個文件夾。Eclipse是開源的開發(fā)工具,具有強大的功能及良好的用戶界面,深受廣大開發(fā)者喜愛本文采用了Eclipse+Android 。例如,當設備接收到一個文本消息或者來電的時候,它可以通過閃燈、發(fā)出聲音、顯示圖標或則會顯示對話框信息的方式提示用戶。通過允許向用戶發(fā)送信號,而不會過分吸引她們的注意力或者打斷她們當前的活動。()將它們自己的intent receive廣播給其她應用程序。(5)Intent Receiver(意向接收器):通過Intent Receiver實現(xiàn)應用能夠對一個外部的事件作出響應,Intent ,()進行注冊。使用Intent,可以在系統(tǒng)范圍內向目標活動或者服務廣播消息,說明希望執(zhí)行某個動作的意圖。Android平臺也提供了系統(tǒng)自帶的Content Provider,如聯(lián)系人信息等。Content Provider是在應用程序之間共享數(shù)據(jù)的首選方法。當連接到一個service之后,我們還可以通過service提供的接口與它進行通訊。它們被用來執(zhí)行一些需要在后臺持續(xù)的常規(guī)處理。Service沒有用戶界面的程序。當startActivity方法被調用將觸發(fā)解析myIntent的動作,這個機制提供了兩個關鍵的好處:能夠重復利用從其她組件中以Intent的形式產生的一個請求和可以在任何時候被一個具有相同IntentFilter的新的startActivity取代。然后,系統(tǒng)會在所有安裝的應用程序中定義的IntentFilter中查找,找到最匹配myIntent的Intent對應的activity。Android使用了Intent,實現(xiàn)在屏幕與屏幕之間跳轉。每一個activity都是繼承于Activity的獨立類。Activity是Android的基本組件。但并非每一個Android應用程序都包含這六個組件。這部分主要是對輸入進行的邏輯判斷,基本會通過if else來實現(xiàn)邏輯判斷。系統(tǒng)想要能在屏幕上顯示出計算器的樣子要有整體的布局,在本模塊中要完成布局的具體設計,使用戶能夠看到整個計算器的畫面。沒有計算模塊系統(tǒng)就不能順利的完成計算,就無法達到用戶的要求。同時本模塊還將提供調用和設置顯示的具體方法。沒有顯示部分就沒有辦法顯示用戶輸入的數(shù)字是否正確,甚至不能顯示計算出的結果,由此可見顯示模塊即包括輸入的部分也包括輸出的部分。輸入模塊主要的任務是描述計算器鍵盤以及實現(xiàn)鍵盤的監(jiān)聽,即當用戶點擊按鍵或者屏幕的時候監(jiān)聽器會去調用相應的處理辦法,本模塊還需要為系統(tǒng)提供了一個較為直觀的鍵盤圖形用戶界面??傮w模塊的功能圖如圖34:圖44 總體模塊功能圖 輸入模塊詳細設計系統(tǒng)如果想完成計算器中的各種功能,首先用戶要能進行數(shù)據(jù)輸入,由于是在觸屏手機上開發(fā)計算器程序,所以要求輸入可以直接使用觸屏進行,所以在設計的時候就要充分的考慮要這一點。 總體模塊詳細設計總體模塊需要完成的任務主要就是系統(tǒng)的程序啟動類,需要負責整個系統(tǒng)的生命周期。圖43 系統(tǒng)框圖系統(tǒng)這三大模塊都各自包含什么內容在下文的系統(tǒng)詳細設計中會有進一步的說明,此處就暫且略過。系統(tǒng)除了總體模塊以外主要由三大模塊來組成,即輸入模塊,顯示模塊和計算模塊。系統(tǒng)流程圖如圖32所示:圖41 程序流程圖 系統(tǒng)功能設計整個系統(tǒng)的功能比較多,比較復雜,如上所說,可以分為十多個功能模塊,但是邏輯上理解其實不算困難,系統(tǒng)包括普通計算功能,包括加減乘除,退格以及清零功能。計算模塊則主要描述了計算器的整體,實現(xiàn)了計算器的界面,負責計算用戶輸入數(shù)據(jù),包括加、減、乘、除、等各種計算功能,記憶數(shù)據(jù)的相關功能,退格以及清零的功能。同時提供了較為直觀的鍵盤圖形用戶界面。具體的說,總體模塊的作用主要是生成應用程序的主類,控制應用程序的生命周期。在整個系統(tǒng)中總體模塊控制系統(tǒng)的生命周期,輸入模塊部分負責讀取用戶輸入的數(shù)據(jù),顯示模塊部分負責顯示用戶之前輸入的數(shù)據(jù)以及顯示最終的計算結果,計算模塊部分負責進行數(shù)據(jù)的運算以及一些其她的功能。 系統(tǒng)的總體設計根據(jù)任務書,符合使用用戶的實際要求,系統(tǒng)應實現(xiàn)以下功能:計算器界面友好,方便使用,顯示至少6位結果,具有基本的加、減、乘、除功能,能夠判斷用戶輸入運算數(shù)是否正確,支持小數(shù)運算,具有退格功能,能夠刪除最后一個輸入,具有清除功能,即C,具有結果存儲功能,能夠顯示存儲器狀態(tài),支持觸屏手機。(4)將C/C++程序文件編譯成動態(tài)鏈接庫文件,然后將動態(tài)庫加載到系統(tǒng)中,然后應用程序通過native接口調用即可。在自動生成的頭文件中將聲明有待實現(xiàn)的C函數(shù)。(2)使用javac命令編譯所編寫的java類,生成可以再JVM運行的字節(jié)碼。實現(xiàn)JNI的步驟如圖25所示。圖 34 JNI 調用關系圖標準的java類庫可能完成不了所需要的功能特性,或許已經有了用其她語言寫成的庫或者程序,而希望在本java程序中使用它,則可通過JNI調用。JNI設計的目的是在java應用程序中調用其它語言編寫的功能模塊。Java Native Interface(JNI)標準成為java平臺的一部分,它允許java代碼和其她語言編寫的代碼進行交互。同時,內容和形式的分離使XML文檔在不同應用系統(tǒng)之間的轉換變得非常簡單,用戶只需要將兩個不同XML文檔的DTD(Document Type Defini
點擊復制文檔內容
公司管理相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1