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

正文內(nèi)容

基于android平臺的漢語語言學(xué)習(xí)應(yīng)用開發(fā)--本科畢業(yè)論文(編輯修改稿)

2024-12-13 22:12 本頁面
 

【文章內(nèi)容簡介】 一種是顯式的 Intent,即在構(gòu)造 Intent 對象時就指定接收者,這種方式與普通的函數(shù)調(diào)用類似,只是復(fù)用的粒度( Activity/Service)有所差異;另一種是隱式 Intent,即 Intent 的發(fā)送者在構(gòu)造 Intent 對象時,并不知道也不關(guān)心接收者是誰,這種方式與函數(shù)調(diào)用差別比較大,有利于降低發(fā)送者和接收者之間的耦合。通常一個每個 Activity 的代碼, java code 文件夾中存有圖片資源 布局文件 存放數(shù)組,鍵值 河北大學(xué) 2020屆本科生畢業(yè)論文 (設(shè)計 ) 9 應(yīng)用程序中需要多個 UI 屏幕,也就需要多個 Activity 類,并且在這些 Activity 之間進(jìn)行切換,這種切換就是通過 Intent 機(jī)制來實(shí)現(xiàn)的。在同一個應(yīng)用程序中切換 Activity 時,通常都知道要啟動的 Activity 具體是哪一個,因此常用顯式的 Intent 來實(shí)現(xiàn)。 河北大學(xué) 2020屆本科生畢業(yè)論文 (設(shè)計 ) 10 3 應(yīng)用程序 手機(jī)軟件設(shè)計原則及方法 手機(jī)軟件的交互設(shè)計原則可總結(jié)為如下四項(xiàng)。這四項(xiàng)原則也是 Ben Shneiderman 的交互設(shè)計八項(xiàng)黃金法則: Strive For Consistency(力求一致); Enable Frequent Users to Use Shortcuts(允許頻繁的使用快捷鍵); Offer Informative Feedback(提供明確的反饋);Design Dialog to Yield Closure(設(shè)計對話,告訴用戶任務(wù)已完成); Offer Simple Error Handling(提供錯誤預(yù)防和簡單的糾錯能力); Permit Easy Reversal of Actions(應(yīng)該方便用戶取消某個操作); Support Internal Locus of Control( 用戶應(yīng)掌握控制權(quán)); Reduce Shortterm Memory Load(減輕用戶的記憶負(fù)擔(dān)),在移動互聯(lián)網(wǎng)方向的衍生。 手機(jī)軟件的交互設(shè)計原則為: 一 . 軟件響應(yīng)速度。 軟件響應(yīng)速度快或許不會引起用戶的覺察,但是一旦軟件響應(yīng)速度過慢,用戶就會失去耐心,降低用戶滿意度。響應(yīng)速度主要體現(xiàn)在幾個方面: 1. 軟件的加載速度。最好不要因?yàn)槁?lián)網(wǎng)或加載數(shù)據(jù)讓用戶長時間在 Loading 頁等待,可以采用分步加載或給用戶提供后臺加載的選項(xiàng)。 2. 用戶操作后的系統(tǒng)反饋速度。這往往會體現(xiàn)在 Tab 頁面的切換、彈出菜單、翻頁滾動等方面。在軟 件設(shè)計過程中需要考慮不同手機(jī)的性能,采用最優(yōu)的策略保證軟件使用過程中的流暢。 3. 聯(lián)網(wǎng)速度。目前網(wǎng)絡(luò)環(huán)境下聯(lián)網(wǎng)的穩(wěn)定性和速度往往是軟件的最大瓶頸。雖然客觀條件如此,但仍需要產(chǎn)品設(shè)計師和開發(fā)工程師在有限的條件下降低由于聯(lián)網(wǎng)而造成的負(fù)面影響。例如,下一頁的預(yù)讀功能、友好的加載提示、接入點(diǎn)自動檢測、有效的聯(lián)網(wǎng)錯誤處理等。 4. 退出速度。要讓用戶能夠找到退出的地方,在退出的同時避免有過多的服務(wù)器交互,盡量把這些工作放在用戶的使用過程當(dāng)中。而且盡量實(shí)現(xiàn)徹底退出,因?yàn)楹笈_運(yùn)行也會給用戶的手機(jī)帶來不必要的耗電和內(nèi)存的占用。 二 . 盡量減少用戶輸入。 在手機(jī)上輸入大量的文字很麻煩。在軟件設(shè)計中應(yīng)盡量簡化用戶的輸入,這就要求軟件具有更多的針對用戶操作的記憶和用戶行為的預(yù)測。例如,輸入法記錄用戶的輸入習(xí)慣常用詞優(yōu)先排序。 三 . 軟件需要保持簡潔和易用性,避免用戶的誤操作。 河北大學(xué) 2020屆本科生畢業(yè)論文 (設(shè)計 ) 11 尤其隨著智能手機(jī)大屏幕觸摸屏的廣泛應(yīng)用,復(fù)雜的軟件布局很容易導(dǎo)致用戶的誤點(diǎn)擊,此外在軟件設(shè)計中還需注意將用戶常用的功能和重要的功能放在用戶容易發(fā)現(xiàn)和容易操作的位置上。 四 . 友好的導(dǎo)航。 導(dǎo)航的設(shè)計對于手機(jī)軟件應(yīng)用來說非常重要。用戶需要隨時知道自己所處的位置,并且能夠快速的回 到起點(diǎn)。例如,在手機(jī)應(yīng)用中的設(shè)置返回鍵。 漢語學(xué)習(xí)連連看 這款應(yīng)用軟件正是本著以上四條原則設(shè)計的,當(dāng)然,初次接觸軟件設(shè)計工作,還有很多需要改進(jìn)的地方。 程序效果展示 。如圖 ,提示開始游戲,退出游戲和關(guān)于。 。如圖 ,選擇其中一種進(jìn)行游戲 ,進(jìn)入游戲,會出現(xiàn)正在加載的字樣,如圖 ,點(diǎn)擊開始游戲會出現(xiàn)各種圖案,同時開始計時,如圖 ,如圖 35.游戲成功還是失敗都會提醒再來一局或者退出游戲,如圖 36,37。點(diǎn)擊 menu 菜單,會彈出退出和取消如圖 39,方便快捷的退出功能會提升應(yīng)用的用戶體驗(yàn)。 河北大學(xué) 2020屆本科生畢業(yè)論文 (設(shè)計 ) 12 圖 3 1 圖 3 2 河北大學(xué) 2020屆本科生畢業(yè)論文 (設(shè)計 ) 13 圖 3 3 圖 3 4 河北大學(xué) 2020屆本科生畢業(yè)論文 (設(shè)計 ) 14 圖 3 5 圖 3 6 河北大學(xué) 2020屆本科生畢業(yè)論文 (設(shè)計 ) 15 圖 3 7 圖 3 8 河北大學(xué) 2020屆本科生畢業(yè)論文 (設(shè)計 ) 16 主要模塊概述 。 定義一個 6*6 二維數(shù)組 map[][]來模擬地圖,并在初始化時為其所有值賦值為 1,表示 36 處全部含有圖片。當(dāng)兩個圖片滿足消去的條件并消去時,數(shù)組所對應(yīng)的位置變?yōu)?0,表示此處不再有圖片。 。 以拼音模式為例。拼音與漢字要成對出現(xiàn),共有 16 張圖片, 36 處方格用來放圖片。將第一對和第二對圖片分別重復(fù)兩次,其他圖片重復(fù)一次。所有的圖片都要在 GridView 中顯示。 GridView 的使用方法是先在布局文件中對 GridView 進(jìn)行配置,然后在 java 文件中再為 GridView 配置內(nèi)容。配置內(nèi)容時要使用 Adapter,即適配器。定義一個 mImageIds 數(shù)組,讓適配器讀取這個數(shù)組的內(nèi)容。本例中 GridView有 36個控 件, GridView為其中的每一個控件分配位置和 Id,從左到右,從上到下依次遞增。如表 31 所示。 得到 GridView 的位置后,按照我們想要的效果對數(shù)組進(jìn)行賦值。效果如圖 39. 圖 3 9 排成這樣的效果后,再對 mImageIds 數(shù)組進(jìn)行多次隨機(jī)交換,即可打亂順序,產(chǎn)生一個隨機(jī)的排列。效果如圖 310. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 表 3 1 河北大學(xué) 2020屆本科生畢業(yè)論文 (設(shè)計 ) 17 圖 3 10 由于隨機(jī)交換的次數(shù)有限,很 大概率上有的拼音與漢字對沒有被分開,或者隨機(jī)交換到一起,這就為游戲的成功進(jìn)行提供了可能。當(dāng)然也有可能出現(xiàn)破解不了的局面,只是這種概率會很小。如果想要完全避免這種破解不了的情況,個人想到了一種解決辦法,就是記錄下多種能夠成功的排列方式,每次生成界面時從中隨機(jī)抽取。這種方法雖然簡單,但是工作量很大,比較繁瑣。 。 這個模塊用來跟蹤記錄交換后的位置。在圖 39 的情形下,拼音和所對應(yīng)漢字的位置滿足一定關(guān)系,我們比較容易就能判斷出拼音和漢字是否能對號這一條件。而經(jīng)過隨即交換后,位置被打亂了,這就需要記 錄下交換過程。每次點(diǎn)擊兩個圖片時,將這兩個圖片的位置還原到圖 39 的情形進(jìn)行比較判斷。所以次模塊連接著兩個最主要的算法,雖然簡單,但是意義重大。 那么,跟蹤記錄是如何來實(shí)現(xiàn)的呢?定義一個數(shù)組 a, a[i]=i,數(shù)組長度為 36。用這個數(shù)組來記錄各個圖片的原位置。所謂原位置,即圖 39 所示的情形。當(dāng) mImageIds 數(shù)組隨即交換時,數(shù)組 a 同步交換。這樣根據(jù)圖片現(xiàn)有的位置和數(shù)組 a 就可以得到圖片的原位置。比如處于 33 位置的漢字“星”,在隨即交換時換到了 0 位置,在數(shù)組 a 中, 0 和 33也就交換了位置。用 p 表示原位置,用 q 表 示現(xiàn)在的位置,則滿足 p=a[q]。此模塊與其他兩個算法之間的關(guān)系如下圖所示。 圖 3 11 河北大學(xué) 2020屆本科生畢業(yè)論文 (設(shè)計 ) 18 。 這個算法是整個程序最核心的算法。 判斷所點(diǎn)擊的兩個圖片能否消去,要判斷兩個條件。第一,兩個控件是否滿足拼音與漢字成對的條件,即邏輯上匹配;第二 ,在拐點(diǎn)不超過兩個的前提下,兩個控件能否聯(lián)通,即物理上匹配。 對于第一個條件就要用到上一個模塊跟蹤記錄下來的位置進(jìn)行判斷。 按照圖 310 的情形進(jìn)行分組,如表 32 所示。每個黑框內(nèi)為一組,每一組第一行的兩個或三個位置和第二行的兩個或三個位置進(jìn)行匹配。判斷邏輯匹配的算法采用了窮舉法,即列舉出每一種情況進(jìn)行判斷。例如第一次點(diǎn)擊的控件原位置是 12,那么第二次點(diǎn)擊的控件如果原位置是 18 或 19,那么這兩個控件就滿足了邏輯上的匹配。 public boolean ispipei(int pos1,int pos2){ int position1=pos1。 int position2=pos2。 int apos1=a[position1]。 int apos2=a[position2]。 if(apos1==0||apos1==1||apos1==2){ if(apos2==6||apos2==7||apos2==8){return true。} } if(apos1==6||apos1==7||apos1==8){ if(apos2==0||apos2==1||apos2==2){return true。} } if(apos1==3||apos1==4||apos1==5){ if(apos2==9||apos2==10||apos2==11){return true。} } if(apos1==9||apos1==10||apos1==11){ if(apos2==3||apos2==4||apos2==5){return true。} } if(apos1==12||apos1==14||apos1==16||apos1==24||apos1==26||apos1==28) {if(apos2==apos1+6||apos2==apos1+7) {return true。}} if(apos1==13||apos1==15||apos1==17||apos1==25||apos1==27||apos1==29) {if(apos2==apos1+6||apos2==apos1+5) {return true。}} if(apos1==18||apos1==20||apos1==22||apos1==30||apos1==32||apos1==34) {if(apos2==apos16||apos2==apos15) {return true。}} if(apos1==19||apos1==21||apos1==23||apos1==31||apos1==33||apos1==35) {if(apos2==apos16||apos2==apos17) 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 表 3 2 河北大學(xué) 2020屆本科生畢業(yè)論文 (設(shè)計 ) 19 {return true。}} return false。 } 判斷第二個條件是否成立的算法則要復(fù)雜許多。連連看要求滿足物理上聯(lián)通的條 件是連線不超過兩個拐點(diǎn)。所以按照零拐點(diǎn),一個拐點(diǎn)和兩個拐點(diǎn)的順序?qū)煽丶倪B線進(jìn)行判斷。 為了方便起見,首先定義兩個函數(shù)。一個水平判斷函數(shù) horizontal 和一個豎直判斷函數(shù) vertical。這兩個函數(shù)分別用于判斷水平兩點(diǎn)或豎直兩點(diǎn)是否滿足聯(lián)通。聯(lián)通的條件是兩點(diǎn)之間(不包括兩點(diǎn))沒有圖片,即 map 數(shù)組中,兩點(diǎn)之間(不包括兩點(diǎn))全為 0。有了這兩個函數(shù),后面的工作會方便許多。 public boolean horizontal(int p1x,int p1y,int p2x,int p2y){ int ax=p1x。 int ay=p1y。 int bx=p2x。 int by=p2y。 if(ax==ay1||ay==ax1) {return true。} if(ax==bxamp。amp。ay==by) return false。 if(ay!=by) return false。 if(ay==byamp。amp。ax!=bx){ int x_start = ax = bx? ax : bx。 //x_start=min{ax,bx} int x_end = ax = bx ? bx : ax。 //x_end=max{ax,bx} for(int x = x
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1