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

正文內(nèi)容

畢業(yè)論文-基于android平臺的校園通軟件設(shè)計-閱讀頁

2024-12-06 18:46本頁面
  

【正文】 實現(xiàn)了一些獨有的功能,如管理 UI 顯示和 UI 的反饋事件。大多數(shù)的應(yīng)用程序通常包括多個界面。每個界面其實都可看作是一個活動。在一些情況下,活動能夠返回給它的上級界面一個返回值,例如一個提供給用戶選擇照片的活動可以返回給它的調(diào)用者用戶選擇了哪個照片文件。用戶可以使用返回鍵使前一個活動重現(xiàn)。默認情況下, Android 會為每個應(yīng)用程序保留從主界面開始的歷史堆棧。一個意圖描述了一個應(yīng)用程序想要做什么。典型的動作類型包括 MAIN、 VIEW、 PICK、 EDIT 等等, 13 而動作對應(yīng)的數(shù)據(jù)則以 URI 的形式表示。 除此之外,還有一個 被稱作意圖過濾器 (IntentFiher)的相關(guān)類。如上例中所描述,想要正常顯示一個聯(lián)系人信息的界面,必須聲明一個意圖過濾器,它說明當(dāng)有聯(lián)系人數(shù)據(jù)要被在界面上顯示時,知道如何處理它們。從一個界面跳轉(zhuǎn)到另一個界面是由解析各種意圖實現(xiàn)的。隨后,這個新的活動接收到意圖 (myIntent)的通知并開始運行。 活動可以在任何時候被一個具有等價意圖過濾器的新活動所替代。意圖接收器并不顯示 UI 界面,它是通過 NotificationManager 來通知用戶他們感興趣的事件發(fā)生 了。當(dāng)一個意圖接收器被觸發(fā)時,系統(tǒng)會根據(jù)需要來啟動應(yīng)用程序。 內(nèi)容提供者 在 Android 中,每個應(yīng)用程序都是有自己的 userID 及在自己的進程中執(zhí)行??梢园衙總€進程想像成是一個黑盒子,彼此不會互 相影響,連內(nèi)存的資料都無法共享。一個內(nèi)容提供者就是一個類,它實現(xiàn)了一個標(biāo)準的方法集合。 14 Intent 的詳細解析 在一個 Android 應(yīng)用中,主要是由四種組件組成的,這四種組件可參考上一節(jié)的內(nèi)容。在這些組件之間的通訊中,主要是由意圖協(xié)助完成的。因此,意圖在這里起著一個媒體中介的作用,專門提供組件之間互相調(diào)用的相關(guān)信息,實現(xiàn)調(diào)用者與被調(diào)用者之間的解耦。系統(tǒng)會調(diào)用找到的 Activity,即為 detailActivity,最終傳入 Intent, detailActivitv則會根據(jù)此 Intent 中的描述,執(zhí)行相應(yīng)的操作。該抽 象描述的具體內(nèi)容如下 : 首先,它是要執(zhí)行的動作的一個簡要描述,如查看、修改等, Android 定義了一套標(biāo)準動作。 其次,是執(zhí)行動作要操作的數(shù)據(jù), Android 采用指向數(shù)據(jù)的一個 URI 方式來實現(xiàn)。例如 LAUNCHER_CATEGORY 表示意圖的接受者應(yīng)該在 Launcher 中作為頂級應(yīng)用出現(xiàn) 。 數(shù)據(jù)類型 :顯式指定意圖的數(shù)據(jù)類型。 組件 :指定意圖的目標(biāo)組件的類名稱。 附加信息 :是其它所有附加信息的集合??傊?,動作、數(shù)據(jù) /數(shù)據(jù)類型、類別和附加信息一起形成了一種語言。隨著應(yīng)用不斷的加入到系統(tǒng)中,它們可以添加新的動作、數(shù)據(jù) /數(shù)據(jù)類型和類別來擴展這種語言。 Android 如何解析 Intent 在應(yīng)用中,可以以兩種形式來使用 Intent: (l)直接意圖 :指定了組件屬性的意圖。 (2)間接意 圖 :沒有指定組件屬性的意圖。對于直接意圖, Android 不需要去做解析,因為目標(biāo)組件已經(jīng)很明確, Android 需要解析的是那些間接意圖,通過解析,將意圖映射給可以處理此意圖的活動、意圖接收器或服務(wù)。在這個解析過程中, Android 是通過意圖的動作、數(shù)據(jù)類型、類別這三個屬性來進行判斷的, 判斷方法如下 : 如果意圖指明定了動作,則目標(biāo)組件的意圖過濾器的動作列表中就必須包含有這個動作,否則不能匹配。和動作一樣,目標(biāo)組件的數(shù)據(jù)類型列表中必須包含意圖的數(shù)據(jù)類型,否則不能匹配。同上,意圖的格式必須出現(xiàn)在目標(biāo)組件的格式列表中。比如意圖中包含了兩個類別 : LAUNCHER_CATEGORY 和 ALTERNATIVEC_CATEGORY,解析得到的目標(biāo)組件必須至少包含這兩個類別。撇掉其他功能不談,手機的特性,就是應(yīng)該能隨時在未完成目前動作的時候,暫停正在使用的功能,切換到接電話、接收短信模式,而且在接完電話回到應(yīng)用程序時,還希望能看到一樣的內(nèi)容。同時執(zhí)行多個程序有它的明顯好處,但也有它的缺點。當(dāng)同時執(zhí)行的程序過多,或是關(guān)閉的程序沒有正確釋放掉內(nèi)存,系統(tǒng)運行時就會覺得越來越慢,甚至不穩(wěn)定。 Android 應(yīng)用程序的生命周期是由 Android 框架進行管理,而不是由應(yīng)用程序直接控制。當(dāng)系統(tǒng)內(nèi)存即將不足的時 候,會依照優(yōu)先級自動進行進程的回收。關(guān)于進程的生命周期將在下一節(jié)中介紹,本節(jié)主要介紹活動的生命周期。開發(fā)者可以在程序中添加一些各狀態(tài)相對應(yīng)的流程,每次活動狀態(tài)改變時,就會執(zhí)行相對應(yīng)的流程。 活動的生命狀態(tài) Android 的虛擬機是使用堆棧管理。在 Android 平臺上,同一個時刻只會有一個活動處于活動或運行狀態(tài)。 (2)暫停狀態(tài) 暫停狀態(tài)是指當(dāng)活動暫時暗下來,退到背景畫面的狀態(tài)。新出現(xiàn)的警告對話框等界面元件蓋住了原來的活動畫面。 (3)停止?fàn)顟B(tài) 17 停 止?fàn)顟B(tài)是指有其他活動正在執(zhí)行,而這個活動己經(jīng)離開屏幕,不再動作的狀態(tài)。處于停止?fàn)顟B(tài)的活動,還可以通過通知來喚醒。要手動終止活動,可以在程序中調(diào)用 finish 方法。 圖 31 Android活動生命周期 圖 31 所示的七個狀態(tài)又可以歸納成 三組 : (l)資源分配 (創(chuàng)建 /銷毀 ) 完整的活動生命周期由創(chuàng)建狀態(tài)開始,由銷毀狀態(tài)結(jié)束。 (2)可見與不可見 (啟動 /重新啟動 /停止 ) 當(dāng)活動運行到啟動狀態(tài)時,就可以在屏幕上看到這個活動。當(dāng)用戶按下返回鍵回到上一個活動 18 時,會先到重新啟動狀態(tài),再到一般的啟動狀態(tài)。當(dāng)這些優(yōu)先級高的事件處理完后,活動就改進入繼續(xù)狀態(tài),此時又取得屏幕的控制權(quán)。該流程首先分配資源給這個活動 (創(chuàng)建狀態(tài) ),然后將活動的內(nèi)容顯示到屏幕上 (啟動狀態(tài) )。 (2)調(diào)用另一個活動 調(diào)用另一個活動的基本流程為 onpause(l)一 onCreate(2)一 onstart(2)一 0nResume(2)一 onStop(l)。直到活動 2 完成一般啟動流程后,活動 1 才會被停止。另外按返回鍵也可以回到原來的活動。如果程序中有直接調(diào)用 finish 方法來關(guān)閉活動的話,系統(tǒng)會跳過先凍結(jié)的階段,直接暫停,停止,然后銷毀。如果被回收掉的活動一旦又重新被調(diào)用時,會像一般啟動一樣再次調(diào)用活動的 onCreate 方法。所以如果要讓再次被創(chuàng)建的活動跟原來開啟過的一樣,那么在活動之間切換時,就要保存資料 :即在每次活動運行到暫?;蛲V?fàn)顟B(tài)時先保存資 料,然后在創(chuàng)建時將資料讀出來。 本軟件是基于 Eclipse 的開發(fā)環(huán)境,在 Android 平臺上的手機校園資訊軟件。 從上面的描述中可以基本了解軟件的功能需求: (1) 首先是學(xué)校電影院每周電影的更新 ; (2) 其次有學(xué)校的各種資料; (3) 各種校園活動及周邊娛樂設(shè)施的信息; (4) 校園校景美圖查看; (5) 校園生活手冊; (6) 擴展內(nèi)容“我的資料”,及“更多”兩個 Activity。 在首頁中,需要 對學(xué)校的大致情況做以介紹,并且有每周影訊的功能。包括娛樂,電影,紀錄片,校景,公開課及生活。 20 圖 41 用戶界面草圖 程序模塊設(shè)計 從功能需求上分析可以看出,整個應(yīng)用程序應(yīng)劃分為 5 個模塊,分別是首頁、分類、搜索、我的資料和擴展功能區(qū)。 在完成用戶界面設(shè)計、數(shù)據(jù)庫設(shè)計和模塊設(shè)計后,至此程序設(shè)計階段基本完成。 MySchool 工程源代碼的結(jié)構(gòu)如圖 所示。 《校園通》軟件 首頁 分類 娛樂 影院信息 電影 紀錄片 校景 查詢 熱門查詢 更多 我的資料 我的課程 我的備忘 我的日程 我的分享 22 圖 42 MySchool 工程的源代碼文件 表 41 MySchool 工程的文件用途說明 Android 的資源文件保存在 /res 的子目錄中。所有在程序開發(fā)階段可以被調(diào)用的 資源都保存在這些目錄中,具體每個資源文件的用途可以參考表 : 資源目錄 文 件 說 明 anim 圖片進入效果 畫面轉(zhuǎn)換位置移動動畫效果(從左 進入) 畫面轉(zhuǎn)換位置移動動畫效果(從左 移出) 畫面轉(zhuǎn)換位置移動動畫效果(從右 進入) 畫面轉(zhuǎn)換位置移動動畫效果(從右 移出) drawable 這個文件夾里是工程里所用的圖片,此處不贅述。 (1) 的部分代碼: public static String TAB_TAG_HOME = home。 public static String TAB_TAG_ACCOUNT = account。 public static String TAB_TAB_MORE = more。 24 TextView mCateText1,mCateText2, mCateText3, mCateText4, mCateText5。 先聲明了用到的組件。 (2) 的部分代碼: private void findviews(){ fun =(Button)findViewById()。 record=(Button)findViewById()。 publicity=(Button)findViewById()。 } private void setListensers() { (clickfun)。 (clickrecord)。 (clickpublicity)。 } Private clickfun= new (){ public void onClick(View v){ Intent funint = new Intent()。 startActivity(funint)。 從代碼中可以看出, WidgetEntity 類中 有 fun, movie, record, tourism,publicity, clips 這 6 個功能模塊。 ( 3) 中的部分代碼 ExpandableListView expandableList。 SuperTreeViewAdapter superAdapter。 25 設(shè)置了二級菜單顯示校內(nèi)娛樂,三級菜單顯示校外娛樂 (adapter)。 (, str, 300).show()。 } })。以上是 Toast(透明試彈出型提示框)的實現(xiàn)代碼,其中包括了顯示內(nèi)容,顯示類型及顯示時間。// 每項的高度 public static final int PaddingLeft = 30。// 如果是由 SuperTreeView調(diào)用,則作為子項需要往右移 static public TextView getTextView(Context context) { lp = new ( , ItemHeight)。 (lp)。 return textView。 (getChild(groupPosition, childPosition).toString())。 return textView。 (getGroup(groupPosition).toString())。 return textView。 菜單內(nèi)容實現(xiàn)方式,數(shù)據(jù)繼承位置的設(shè)定,及具體顯 示方式。 public View getView(int position, View convertView, ViewGroup parent) { ViewHolder viewHolder。 viewHolder = new ViewHolder()。 = (ImageView) ()。 } else { viewHolder = (ViewHolder) ()。 ((position).getImageId())。 } } 使用 gridView 控件來實現(xiàn)圖片的顯示,并綁定一個 textview 來實現(xiàn)文字和圖片成組顯示。五 個用戶界面風(fēng)格簡約、操作簡便,用戶體驗將非常好。 Android虛擬機啟動較慢。由于對 JAVA濃厚的興趣引發(fā)了我對 Android 的好奇心,從一開始什么都不懂一直摸索完成了這個軟件。 雖然,這個軟件目前運行良好,但是我認為代碼的健壯行還很差,在整個工程的構(gòu)思方面也不足,用戶操作界面還不夠靈活,這些問題還需要今后逐一解決。 31 ag an employment tribunal clai Emloyment tribunals sort out disagreements between employers and employees. You may need to make a claim to an employment tribunal if: you do
點擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1