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

正文內(nèi)容

基于安卓的五子棋de游戲設(shè)計(jì)論文(編輯修改稿)

2024-07-15 18:54 本頁面
 

【文章內(nèi)容簡(jiǎn)介】 。例如,一個(gè)活動(dòng)可能表示一個(gè)用戶可選擇的菜單項(xiàng)列表,或者可能顯示照片連同它的標(biāo)題。一個(gè)文本短信應(yīng)用程序可能有一個(gè)活動(dòng),顯示聯(lián)系人的名單發(fā)送信息;第二個(gè)活動(dòng),寫信息給選定的聯(lián)系人;其他活動(dòng),重新查看舊信息或更改設(shè)置。雖然他們一起工作形成一個(gè)整體的用戶界面,但是每個(gè)活動(dòng)是獨(dú)立于其他活動(dòng)的。每一個(gè)都是作為Activity基類的一個(gè)子類的實(shí)現(xiàn)。:因?yàn)閹缀跛械幕顒?dòng)(activities)都是與用戶交互的,所以Activity類關(guān)注創(chuàng)建窗口,你可以用方法setContentView(View)將自己的UI放到里面。然而活動(dòng)通常以全屏的方式展示給用戶,也可以以浮動(dòng)窗口或嵌入在另外一個(gè)活動(dòng)中。有兩個(gè)方法是幾乎所有的Activity子類都實(shí)現(xiàn)的:onCreate(Bundle):初始化你的活動(dòng)(Activity),比如完成一些圖形的繪制。最重要的是,在這個(gè)方法里你通常將用布局資源(layout resource)調(diào)用setContentView(int)方法定義你的UI,和用findViewById(int)在你的UI中檢索你需要編程地交互的小部件(widgets)。setContentView指定由哪個(gè)文件指定布局(),可以將這個(gè)界面顯示出來,然后我們進(jìn)行相關(guān)操作,我們的操作會(huì)被包裝成為一個(gè)意圖(Intent),然后這個(gè)意圖對(duì)應(yīng)有相關(guān)的activity進(jìn)行處理。 onPause():處理當(dāng)離開你的活動(dòng)時(shí)要做的事情。最重要的是,用戶做的所有改變應(yīng)該在這里提交(通常ContentProvider保存數(shù)據(jù))。 生命周期如圖31圖31Android的生命周期每一個(gè)應(yīng)用程序可能只包含一個(gè)活動(dòng),或者是像短信應(yīng)用程序一樣,它可能會(huì)包含幾個(gè)活動(dòng)。這些活動(dòng)分別是什么,以及有多少,這個(gè)當(dāng)然取決于它的應(yīng)用程序自己的設(shè)計(jì)。根據(jù)一般情況來說,當(dāng)一個(gè)應(yīng)用程序被啟動(dòng)的時(shí)候,會(huì)被標(biāo)記為第一個(gè)的活動(dòng),應(yīng)該展示給用戶。從一個(gè)活動(dòng)轉(zhuǎn)移到另外一個(gè)活動(dòng)由當(dāng)前的活動(dòng)完成從而開始下一個(gè)。每一個(gè)活動(dòng)都會(huì)有一個(gè)默認(rèn)的窗口。根據(jù)一般情況來說,窗口是會(huì)填滿整個(gè)屏幕的,但是它也有可能比屏幕小或者是浮在其他窗口上,這個(gè)就是程序員代碼的編寫情況了。一個(gè)活動(dòng)還可以使用額外窗口。比如彈出式對(duì)話框,或者是當(dāng)一個(gè)用戶選擇屏幕上一個(gè)特定的項(xiàng)時(shí),會(huì)跳出一個(gè)窗口來顯示給用戶重要的信息。窗口的可視化內(nèi)容是由繼承自接口為View基類,一個(gè)分層的視圖—對(duì)象提供。每個(gè)可視化控件是窗口內(nèi)的一個(gè)特定的矩形空間。父視圖包含和組織子女視圖的布局。葉子視圖分層的底層。繪制的矩形會(huì)直接控制和響應(yīng)用戶的操作。所以,一個(gè)視圖活動(dòng)是與用戶發(fā)生交互的地方。比如說,一個(gè)視圖顯示一個(gè)小的圖片和當(dāng)用戶點(diǎn)擊圖片時(shí)發(fā)起一個(gè)動(dòng)作行為。Android有一些現(xiàn)成的可視化控件你可以使用,其中包括按鈕(buttons)、圖片按鈕(ImageButton)、文本域(text fields)、可編輯文本控件(EditText)、菜單項(xiàng)(menu items)、仿真時(shí)鐘(AnalogClock)滾動(dòng)條(scroll bars)、開關(guān)按鈕(ToggleButton)、復(fù)選按鈕(check boxes)等等。() 方法來設(shè)置一個(gè)視圖層次在我們的活動(dòng)窗口中。內(nèi)容視圖(content view)是層次結(jié)構(gòu)的根視圖對(duì)象。層次結(jié)構(gòu)如下圖32所示:圖32 View的層次結(jié)構(gòu)()方法:public void setContentView (int layoutResID):根據(jù)布局資源的設(shè)置活動(dòng)界面。資源將會(huì)被夸大,添加布局資源文件中的所有的最高層的視圖( toplevel views )到活動(dòng). 服務(wù)(Services)與Activity相反,Service是沒有可視化的用戶界面,但是Service的特點(diǎn)是能長(zhǎng)時(shí)間在后臺(tái)運(yùn)行的。所以,也可以這樣去理解,Service是具有一段較長(zhǎng)生命周期而且沒有用戶界面的程序。比如說一個(gè)服務(wù)可能要播放背景音樂但是用戶做可以去做其他一些事情,或者它也可能從網(wǎng)絡(luò)獲取數(shù)據(jù),也或者是計(jì)算一些東西并會(huì)提供一個(gè)結(jié)果給需要的活動(dòng)(activities)。每一個(gè)服務(wù)都繼承自Service基類。service聲明。()()啟動(dòng)因?yàn)閟ervice是有兩個(gè)不同的生命周期的。一個(gè)非常典型的例子是媒體播放器播放一個(gè)播放列表中的歌曲文件。該播放器應(yīng)用程序?qū)⒖赡苡幸粋€(gè)或者是多個(gè)活動(dòng)(activities),可以允許用戶選擇要聽的歌曲和開始播放。然而,音樂播放本身就不會(huì)被一個(gè)活動(dòng)處理,因?yàn)橛脩羰窍M3忠魳芬恢辈シ诺?,?dāng)用戶離開播放器的時(shí)候而去做其他事情。為了保持音樂能夠繼續(xù)播放,媒體播放器活動(dòng)可以啟動(dòng)一個(gè)服務(wù)運(yùn)行在后臺(tái)的運(yùn)行。系統(tǒng)將會(huì)保持音樂播放服務(wù)運(yùn)行,甚至媒體播放器離開屏幕的時(shí)候??梢赃B接到(綁定到)一個(gè)持續(xù)運(yùn)行的服務(wù)(并啟動(dòng)服務(wù),如果它尚未運(yùn)行)。連接之后,你可以通過服務(wù)暴露的接口與服務(wù)交流。對(duì)于音樂服務(wù),這個(gè)接口可以允許用戶暫停、倒帶、停止和重新播放。像活動(dòng)(activities)和其他組件一樣,服務(wù)(services)運(yùn)行在應(yīng)用程序進(jìn)程中的主線程中。因此,他們將不會(huì)阻止其他組件或用戶界面,他們往往產(chǎn)生其他一些耗時(shí)的任務(wù)(如音樂播放)。 廣播接收者(Broadcast receivers) 一個(gè)廣播接收者是這樣一個(gè)組件,它不做什么事,僅是接受廣播公告并作出相應(yīng)的反應(yīng)。許多廣播源自于系統(tǒng)代碼,例如公告時(shí)區(qū)的改變、電池電量低、已采取圖片、用戶改變了語言偏好。應(yīng)用程序也可以發(fā)起廣播,例如為了他其他程序知道某些數(shù)據(jù)已經(jīng)下載到設(shè)備且他們可以使用這些數(shù)據(jù)。一個(gè)應(yīng)用程序可以有任意數(shù)量的廣播接收者去反應(yīng)任何它認(rèn)為重要的公告。所有的接受者繼承自BroadcastReceiver基類。BroadcastReceiver類:是接受sendBroadcast()發(fā)送的意圖(intents)的基類。()動(dòng)態(tài)地注冊(cè)這個(gè)類的實(shí)例,receiver標(biāo)簽靜態(tài)發(fā)布。注意:() 注冊(cè)一個(gè)接受者,()注銷它。因?yàn)楫?dāng)暫停時(shí)你不會(huì)收到意圖,注銷它將削減不必要的系統(tǒng)開銷。()中注銷它,因?yàn)樗鼘⒉粫?huì)被調(diào)用,如果用戶移動(dòng)到先前的堆棧。有兩種主要的可接受廣播類型:正常廣播()是完全異步的。所有的廣播接收者以無序方式運(yùn)行,往往在同一時(shí)間接收。這樣效率較高,但是意味著接受者不能使用結(jié)果或終止廣播數(shù)據(jù)傳播。 有序廣播()一次傳遞給一個(gè)接收者。由于每個(gè)接收者依次執(zhí)行,因此它可以傳播到下一個(gè)接收器,也可以完全終止傳播以便他不會(huì)傳遞給其他接收者。接收者的運(yùn)行順序可由匹配的意圖過濾器(intentfilter)的android:priority屬性控制。 廣播接收者不顯示一個(gè)用戶界面。然而,它們啟動(dòng)一個(gè)活動(dòng)去響應(yīng)收到的信息,或者他們可能使用NotificationManager去通知用戶。通知可以使用多種方式獲得用戶的注意——閃爍的背光、振動(dòng)設(shè)備、播放聲音等等。典型的是放在一個(gè)持久的圖標(biāo)在狀態(tài)欄,用戶可以打開獲取信息。 內(nèi)容提供者(Content providers)內(nèi)容提供者(content provider)使一個(gè)應(yīng)用程序的指定數(shù)據(jù)集提供給其他應(yīng)用程序。這些數(shù)據(jù)可以存儲(chǔ)在文件系統(tǒng)中、在一個(gè)SQLite數(shù)據(jù)庫、或以任何其他合理的方式。內(nèi)容提供者繼承自ContentProvider 基類并實(shí)現(xiàn)了一個(gè)標(biāo)準(zhǔn)的方法集,使得其他應(yīng)用程序可以檢索和存儲(chǔ)數(shù)據(jù)。然而,應(yīng)用程序并不直接調(diào)用這些方法。相反,替代的是它們使用一個(gè)ContentResolver對(duì)象并調(diào)用它的方法。ContentResolver能與任何內(nèi)容提供者通信,它與提供者合作來管理參與進(jìn)來的進(jìn)程間的通信。內(nèi)容提供者是Android應(yīng)用程序的主要組成部分之一,提供內(nèi)容給應(yīng)用程序。他們封裝數(shù)據(jù)且通過單個(gè)ContentResolver接口提供給應(yīng)用程序。只有需要在多個(gè)應(yīng)用程序間共享數(shù)據(jù)是才需要內(nèi)容提供者。例如,通訊錄數(shù)據(jù)被多個(gè)應(yīng)用程序使用,且必須存儲(chǔ)在一個(gè)內(nèi)容提供者中。如果你不需要在多個(gè)應(yīng)用程序間共享數(shù)據(jù),你可以直接使用SQLiteDataBase當(dāng)ContentResolver發(fā)出一個(gè)請(qǐng)求時(shí),系統(tǒng)檢查給定的URI的權(quán)限并傳遞請(qǐng)求給內(nèi)容提供者注冊(cè)。內(nèi)容提供者能理解URI想要的東西。UriMatcher 類用于幫組解析URIs。需要實(shí)現(xiàn)的方法主要如下:query(Uri, String[], String, String[], String) 返回?cái)?shù)據(jù)給調(diào)用者 insert(Uri, ContentValues) 插入數(shù)據(jù)到內(nèi)容提供者 update(Uri, ContentValues, String, String[]) 更新內(nèi)容提供者已存在的數(shù)據(jù) delete(Uri, String, String[]) 從內(nèi)容提供者中刪除數(shù)據(jù) getType(Uri) 返回內(nèi)容提供者中的MIME 類型數(shù)據(jù) 更多的關(guān)于ContentResolver信息,請(qǐng)查看相關(guān)文檔。每當(dāng)有一個(gè)應(yīng)該由特定組件處理的請(qǐng)求,Android可以確保該組件的應(yīng)用程序正在運(yùn)行,如果沒有就啟動(dòng)它,而且一個(gè)適當(dāng)?shù)慕M件實(shí)例可用,如果沒有就創(chuàng)建。 第4章 相關(guān)技術(shù)概念本章節(jié)主要介紹一下此論文中用到了的Android的布局文件,可視化控件以及它們的具體實(shí)現(xiàn)。 (AbsoluteLayout)坐標(biāo)布局(AbsoluteLayout)的子控件需要指定相對(duì)與此坐標(biāo)布局的橫、縱坐標(biāo)的值,將會(huì)想FrameLayout那樣被排在左上角。項(xiàng)目中進(jìn)入游戲的布局文件代碼如下:AbsoluteLayout xmlns:android= android:layout_width=wrap_content android:layout_height=wrap_content android:background=@android:color/blackImageView android:id=@+id/menu android:layout_width=wrap_content android:layout_height=wrap_content android:src=@drawable/menu android:layout_x=55px android:layout_y=10px/Button android:id=@+id/b1 android:layout_width=110px android:layout_height=40px android:layout_x=100px android:layout_y=150px android:text=新游戲/Button android:id=@+id/b3 android:layout_width=110px android:layout_height=40px android:layout_x=100px android:layout_y=200px android:text=幫助/Button android:id=@+id/b4 android:layout_width=110px android:layout_height=40px android:layout_x=100px android:layout_y=250px android:
點(diǎn)擊復(fù)制文檔內(nèi)容
物理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1