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

正文內(nèi)容

基于android平臺(tái)的音樂(lè)播放器畢業(yè)論文-閱讀頁(yè)

2024-11-16 11:23本頁(yè)面
  

【正文】 局配置文件,圖 434 為該播放器的圖片資源。任何一個(gè) 文件的格式都應(yīng)為: ?xml version encoding utf8? intentfilter /intentfilter usessdk / usespermission / Android 系統(tǒng)有一個(gè)編碼的規(guī)定,支持的編碼是 utf8,當(dāng)程序中出現(xiàn)亂碼是,我們須將其編碼格式轉(zhuǎn)化為 utf8.在 中會(huì)在第一行聲明一句: ?xml version encoding utf8? 。在第二行定義了我們需要使用的架構(gòu),該架構(gòu)來(lái)自 xmlns:android xmlns XML namespace 是一個(gè)命名空間,它就像一條河的源頭一樣能讓我們找到系統(tǒng)架構(gòu),每一 個(gè)配置文件必須有這個(gè) xmlns,否則程序中的所使用的所有資源將無(wú)法找到。 string/app_name 表示了對(duì) res/value 目錄下 中定義的app_name 參數(shù)的引用。 在 intentfilter 選項(xiàng)中,有 action 和 category 等等屬性,我們需要定義action 的值為 , category 的值為 ,它們是系統(tǒng)的值,程序在解析到這些常用后就可以確定首先要啟動(dòng)的 Activity。 在 中有一個(gè)根結(jié)點(diǎn) usessdk ,它是我們需要定義的ADT 版本,例如我們將其值設(shè)定為 Android:minSdkVersion 10,則表示此Android 工程所用的版本為 , Android 還有 、 、 、 、 、 、 、 這幾 個(gè)版本。當(dāng)然 usespermission 還有很多其它的權(quán)限,例如 GPS 定位權(quán)限,瀏覽器數(shù)據(jù)存取權(quán) _HISTORY_BOOKMARKS 等等。四大組件要使用前都需要聲明,其聲明方式如下: 其中聲明 provider 時(shí)還需要聲明其授權(quán) authorities。過(guò)濾器 intentfilter 有兩種啟動(dòng)方式來(lái)啟動(dòng)界面: 1 顯示方式 顯示方式是在代碼中的直接啟動(dòng)組件,啟動(dòng)時(shí)會(huì)聲明 Intent,在它的構(gòu)造方法 Intent 組件 1,組件 2 中直接指定一個(gè)組件的名字 ,然后調(diào)用方法startIntent intent 以啟動(dòng)指定的組件。這 些屬性是在 文件中聲明的。 系統(tǒng)功能詳細(xì)設(shè)計(jì) 歡迎界面模塊詳細(xì)設(shè)計(jì) 在歡迎界面模塊的設(shè)計(jì)中,應(yīng)用了 LinearLayout 布局和 Animation 效果。 歡迎界面模塊運(yùn)行結(jié)果如圖中部分圖片。 本 LinearLayout 布局的 id 值是 llSplash,背景顏色為“ ffffffff” 。在編寫代碼前,首先要定義一個(gè) Animation 類對(duì)象,以便編寫代碼時(shí)調(diào)用該類中方法,主要代碼如下: ha new Handler 。 // 啟動(dòng)線程由歡迎界面跳往首頁(yè) , 。 WelingActish 。 。 ru, 3000 。 Timer delay new Timer 。 。主界面模塊運(yùn)行結(jié)果如圖 52 所示。 刪除標(biāo)題,采用自定義布局。//去掉標(biāo)題欄 線性布局,文字和圖片。代碼如下: int[] gridViewPic02 006,002 。 gridView02 GridView findViewById view2 。//功能菜單每行顯示 3 20 。//垂直間距 20 new OnItemClickListener Override public void onItemClick AdapterView ? arg0, View arg1, int arg2,long arg3 Intent intent new Intent 。 startActivity intent 。 case 1: //由首界面跳轉(zhuǎn)到本地歌曲界面 , 。 break。 。 播放列表模塊中是一個(gè) ListView 控件, ListView 中的 item 采用LinearLayout 布局,其中包含了歌曲名稱信息、歌手名稱信息和歌曲時(shí)長(zhǎng)信息,此三項(xiàng)用 TextView 顯示。對(duì)應(yīng)的代碼如下: TabHost th getTabHost 。 ImageView tyle_imageview .setImageResource 1 。//文字 list .setIndicator view1 .setContent this 。 ImageView tyle_imageview .setImageResource 2 。//文字 artists .setIndicator view2 .setContent this 。 ImageView tyle_imageview .setImageResource 3 。//文字 albums .setIndicator view3 .setContent this 。 ImageView tyle_imageview .setImageResource 4 。//文字 recent .setIndicator view4 .setContent this 。通過(guò)適配器 Adapter向其中添加詳細(xì)的數(shù)據(jù)。系統(tǒng)默認(rèn)的方式每一行只顯示一個(gè)TextView,本播放列表實(shí)現(xiàn)了自定義的方式,剛 ListView 的每一行顯示一個(gè)音樂(lè)圖片和一個(gè)歌曲名字。由于 BaseAdapter是一個(gè)抽象類,我們需要實(shí)現(xiàn)里面的抽象方法 getView()。視圖可以顯示在 Activity 上,所以就可以看到我們想要的歌曲列表界面。這樣就可以通過(guò) Intent 將數(shù)據(jù)傳入到其它的 Activity。 歌曲列表是從播放主界面跳轉(zhuǎn)過(guò)來(lái)的,能跳到該歌曲列表是前提是數(shù)據(jù)有歌曲列表的存在。如果不存在剛會(huì)提示是空列表,選擇到 SDCard 中添加歌曲 圖 中間為一個(gè) Dialog 對(duì)話框,具有 Acitivty 的屬性,但是獨(dú) 立于界面的一個(gè)視圖,該對(duì)話框中放置了一個(gè)布局文件。 。 歌曲播放模塊詳細(xì)設(shè)計(jì) ( 1)歌曲播放界面顯示 該模塊可以控制歌曲的播放進(jìn)度,顯示正在播放的歌曲的名稱,單擊進(jìn)行上一首、下一首、暫停、播放等功能。 圖 54 歌曲播放主界面 ( 2) 歌曲播放界面實(shí)現(xiàn) 該界面要到了較為復(fù)雜的布局,采用了多個(gè) LinearLayout布局和 TextView、SeekBar、 ImageButton 等控件。對(duì) ImageButto 控件設(shè)置了單擊效果,重新定義了 SeekBar 控件的風(fēng)格,使得界面更加人性化,增強(qiáng)了用戶體驗(yàn)。會(huì)員登錄模塊運(yùn)行結(jié)果如圖 55 所示。 圖 云播放列表界面 頁(yè)面設(shè)計(jì) 采用 LinearLayout 布局,采用多個(gè) Android 控件和相關(guān)屬性。對(duì)應(yīng)的代碼如下: public void onClick View v // TODO Autogenerated method stub if validate // 判斷驗(yàn)證是不是成 功了 if login // 判斷登陸是不是成功了 , 登陸成功 .show 。 startActivity intent 。 Dialogshow 輸入的用戶名或密碼有問(wèn)題,請(qǐng)重來(lái) 。 */ private boolean validate String uname .toString 。 return false。 if Dialogshow 密碼必須輸入 。 return true。為 Button 控件添加 Animation 效果,增強(qiáng)用戶體驗(yàn),是軟 件更容易本接受界面顯示如圖 56 所示: 圖 56 會(huì)員注冊(cè)界面 ( 2)會(huì)員注冊(cè)界面實(shí)現(xiàn) 會(huì)員注冊(cè)成功就將會(huì)員信息存入數(shù)據(jù)庫(kù)中,不成功則通過(guò) Toast 提示。 Intent intent new Intent , 。 else Dialogshow 注冊(cè)失敗 。 */ private boolean validate String uname .toString 。 return false。 if Dialogshow 密碼必須輸入 。 String firmpwd .toString 。 return false。 return false。 // validate 系統(tǒng)測(cè)試 經(jīng)過(guò)前一階段的設(shè)計(jì)與開(kāi)發(fā),本次設(shè)計(jì)的基于 Android 平臺(tái)的音樂(lè) 播放器基本結(jié)束。 測(cè)試環(huán)境: 硬件環(huán)境為普通計(jì)算機(jī)配置后者 版本以上的 Android 手機(jī)。 系統(tǒng)關(guān)鍵測(cè)試點(diǎn):登陸管理測(cè)試、音樂(lè)播放功能測(cè)試。如果用戶輸入的用戶名錯(cuò)誤暨用戶名不存在,則會(huì)給用戶彈出一個(gè) Toast 提示用戶,“用戶不能為空”。” 。屏幕下方的 4 個(gè)控制按鈕可準(zhǔn)確操作,包括上一首、下一首、播放和暫停功能。 總結(jié) 通過(guò)對(duì) Android 手機(jī)平臺(tái)的音樂(lè)播放器軟件的開(kāi)發(fā),使我對(duì) Android 音樂(lè)播放器系統(tǒng)的整體設(shè)計(jì)有一個(gè)深入的了解,對(duì)整個(gè)流程也會(huì)有一個(gè)清晰的認(rèn)識(shí)。而其它的功能都是在這三個(gè)功能的基礎(chǔ)上去補(bǔ)充添加的,但是這是功能的確是必不可少的功能,否則就不能算是音樂(lè)播放器了。 在開(kāi)發(fā)過(guò)程中我學(xué)到了一些經(jīng)驗(yàn):系統(tǒng)分析的好壞將決定著的系統(tǒng)開(kāi)發(fā)成功與否,一份好分析設(shè)計(jì)將是成功開(kāi)發(fā)主要因素。然后再開(kāi)始編寫程序代碼,這樣做到每寫一步代碼心底有數(shù) ,有條不絮。 致 謝 感謝老師在項(xiàng)目中對(duì)我的指導(dǎo),使我受益匪淺,在老師和同學(xué)的大力幫助下終于克服了重重地難關(guān),順利的完成了這次設(shè)計(jì)。感謝各位同學(xué)對(duì)我的幫助,對(duì)我在該項(xiàng)目中遇到的很多問(wèn)題給予了很大的幫
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1