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

正文內(nèi)容

畢業(yè)論文——基于android平臺的音樂播放器-資料下載頁

2024-10-21 19:30本頁面

【導(dǎo)讀】后PC時代,從互聯(lián)網(wǎng)時代轉(zhuǎn)移到移動互聯(lián)網(wǎng)時代。亞的塞班,微軟的WindowsMobile,Google的Android。上最炙手可熱的手機(jī)操作系統(tǒng)。目前Android是最熱門的操作系統(tǒng),憑。借Linux的軟件優(yōu)勢其應(yīng)用的廣泛程度已經(jīng)讓其他對手相形見絀。開發(fā)基于Android操作平臺的應(yīng)用具有巨大的意義。出能為用戶提供更好的基于Android平臺的音樂播放器軟件。

  

【正文】 View view4 = (, , null)。 ((ImageView)()).setImageResource()。//圖片 ((TextView)()).setText(TAG4)。//文字 ((recent).setIndicator(view4).setContent(this))。 Tabhost中的 ListView是通過 Layout布局文件產(chǎn)生。通過適配器 Adapter向其中添加詳細(xì)的數(shù)據(jù)。 河北 xxxxxxxxxx 學(xué)院 第 31 頁 共 42 頁 播放列表界面(如圖 ) 圖 在 Android里面,有一個視圖叫 ListView,其特點是一個有 BaseAdapter的屬性,從下到下,或從左到右的顯示方式。系統(tǒng)默認(rèn)的方式每一行只顯示一個 TextView,本播放列表實現(xiàn)了自定義的方式,剛 ListView的每一行顯示一個音樂圖片和一個歌曲名字。我們定義一個類 MusicAdapter 繼承了 BaseAdapter,然后通過算法對這個適配器進(jìn)行擴(kuò)展,擴(kuò)展成為第一行能顯示一張圖片和一個歌曲名字。由于 BaseAdapter是一個抽象類,我們需要實現(xiàn)里面的抽象方法 getView()。該方法返回一個 View,即視圖。視圖可以顯示在 Activity上,所以就可以看到我們想要的歌曲列表界面。 ListView同樣有一個監(jiān)聽器 new onItemClickListener(){ @Override public void onItemClick(AdapterView? arg0, View arg1, int arg2,long arg3) {}},我們只要實現(xiàn)這個方法,就可以監(jiān)聽鼠標(biāo)的點擊事件,當(dāng)鼠標(biāo)點擊到每一行時,可以通過(int position)得到該行上的信息。這樣就可以通過 Intent將數(shù)據(jù)傳入到其它的 Activity。本程序的思路是當(dāng)鼠標(biāo)點擊一行,會跳轉(zhuǎn)到另一個 Activity里面,這個Activity和歌曲列表類似,也是一個 ListView,該界面將在下一節(jié)介紹。 歌曲列表是從播放主界面跳轉(zhuǎn)過來的,能跳到該歌曲列表是前提是數(shù)據(jù)有歌曲列表的存在。因為每次歌曲列表顯示時會查詢數(shù)據(jù)庫中的歌曲列表。如果不存在剛會提示是空列表,選擇到SDCard中添加歌曲 (如圖 ) 河北 xxxxxxxxxx 學(xué)院 第 32 頁 共 42 頁 圖 中間為一個 Dialog對話框,具有 Acitivty的屬性,但是獨立于界面的一個視圖,該對話框中放置了一個布局文件。 Dialog的創(chuàng)建: , AlertDialog alert =()。()。 該 Dialog上有兩個菜單選項,第一個為“從 SD卡”,點擊會跳轉(zhuǎn)到 SDcard界面中。 歌曲播放模塊詳細(xì)設(shè)計 ( 1) 歌曲播放界面顯示 該模塊可以控制歌曲的播放進(jìn)度,顯示正在播放的歌曲的名稱,單擊進(jìn)行上一首、下一首、暫停、播放等功能。界面如圖 53所示。 河北 xxxxxxxxxx 學(xué)院 第 33 頁 共 42 頁 圖 54 歌曲播放主界面 ( 2) 歌曲播放界面實現(xiàn) 該界面要到了較為復(fù)雜的布局,采用了多個 LinearLayout 布局和TextView、 SeekBar、 ImageButton 等控件。在 TextView 應(yīng)用到了跑馬燈效果,顯示較長的歌曲名稱。對 ImageButto 控件設(shè)置了單擊效果,重新定義了 SeekBar 控件的風(fēng)格,使得界面更加人性化,增強(qiáng)了用戶體驗。 設(shè)置 TextView 跑馬燈效果的代碼如下: android:singleLine=true android:ellipsize=marquee android:marqueeRepeatLimit=marquee_forever android:focusable=true 河北 xxxxxxxxxx 學(xué)院 第 34 頁 共 42 頁 android:focusableInTouchMode=true android:scrollHorizontally=true 自定義 SeekBar 風(fēng)格的代碼如下: SeekBar android:layout_marginTop=10dp android:layout_width=fill_parent android:layout_height=wrap_content android:progressDrawable=@drawable/media_player_progress_bg android:thumb=@drawable/ratingbar_full_empty android:id=@+id/seekMusicProgress android:max=100 android:progress=0 / 會員登錄模塊詳細(xì)設(shè)計 在會員登錄模塊中,用到了 Android 中 Dialog、 Button、 EditText、 TextView控件,并對 Button 控件添加點擊效果,使操作更加個性化,增強(qiáng)用戶體驗。會員登錄模塊運(yùn)行結(jié)果如圖 55所示。 圖 55 會員登錄界面 河北 xxxxxxxxxx 學(xué)院 第 35 頁 共 42 頁 登陸成功后,會出現(xiàn)云播放列表 ,界面如圖 所示。 圖 云播放列表 界面 ( 1) 頁面設(shè)計 采用 LinearLayout 布局,采用多個 Android 控件和相關(guān)屬性。相關(guān)屬性代碼如下: ! 賬號 TextView android:id=@+id/login_user_input android:layout_width=wrap_content android:layout_height=wrap_content android:layout_alignParentTop=true android:layout_marginTop=5dp android:text=@string/login_label_username style=@style/normalText/ EditText android:id=@+id/username_edit 河北 xxxxxxxxxx 學(xué)院 第 36 頁 共 42 頁 android:layout_width=fill_parent android:layout_height=wrap_content android:layout_below=@id/login_user_input android:hint=@string/login_username_hint android:inputType=text android:singleLine=true / ( 2) 界面功能的實現(xiàn) 會員登錄通過對數(shù)據(jù)庫中的數(shù)據(jù)查詢并匹配,如用戶名和密碼都正確,則登錄成功進(jìn)入到云播放列表模塊,如果用戶名或密碼不正確,通過 Toast 提示用戶。對應(yīng)的代碼如下: public void onClick(View v) { // TODO Autogenerated method stub if (validate()) {// 判斷驗證是不是成功了 if (login()) {// 判斷登陸是不是成功了 (, 登陸成功 ).show()。 Intent intent = new Intent(, )。 startActivity(intent)。 } else { (, 登陸失敗,請重登 , ).show()。 Dialogshow(輸入的用戶名或密碼有問題,請重來 )。 } } } /* 2 驗證輸入的用戶名和密碼對不對。 */ private boolean validate() { String uname = ().toString()。 if (()) { Dialogshow(用戶名必須輸入 )。 河北 xxxxxxxxxx 學(xué)院 第 37 頁 共 42 頁 return false。 } String pwd = ().toString()。 if (()) { Dialogshow(密碼必須輸入 )。 return false。 } return true。 }// validate 會員注冊模塊詳細(xì)設(shè)計 ( 1) 會員注冊界面顯示 會員注冊界面采用 LinearLayout 布局,應(yīng)用 TextView、 EditText 和 Button控件。為 Button 控件添加 Animation 效果,增強(qiáng)用戶體驗,是軟件更容易本接受界面顯示如圖 56所示: 圖 56 會員注冊界面 ( 2)會員注冊界面實現(xiàn) 河北 xxxxxxxxxx 學(xué)院 第 38 頁 共 42 頁 會員注冊成功就將會員信息存入數(shù)據(jù)庫中,不成功則通過 Toast 提示。 其部分代碼如下: public void onClick(View v) { // TODO Autogenerated method stub if(validate()){ if(addUser()){ (, 注冊成功 ,).show()。 Intent intent =new Intent(,)。 startActivity(intent)。 }else{ Dialogshow(注冊失敗 )。 } } } /*2 驗證輸入的用戶名和密碼。 */ private boolean validate() { String uname = ().toString()。 if (()) { Dialogshow(用戶名必須輸入 )。 return false。 } String pwd = ().toString()。 if (()) { Dialogshow(密碼必須輸入 )。 return false。 } String firmpwd = ().toString()。 if ((pwd)) { }else{ 河北 xxxxxxxxxx 學(xué)院 第 39 頁 共 42 頁 if(()){ Dialogshow(確認(rèn)密碼不能為空 )。 return false。 }else{ Dialogshow(確認(rèn)密碼與密碼不一致,請重新輸入 )。 return false。 } } return true。 }// validate 第 6章 系統(tǒng)測試 經(jīng)過前一階段的設(shè)計與開發(fā),本次設(shè)計的基于 Android 平臺的音樂播放器基本結(jié)束。為了盡早發(fā)現(xiàn)軟件的錯誤和漏洞,使軟件能夠長期、穩(wěn)定的運(yùn)行下去,下面將對本系統(tǒng)的主要部分進(jìn)行軟件測試。 測試環(huán)境: 硬件環(huán)境為普通計算機(jī)配置后者 版本以上的 Android 手機(jī)。軟件環(huán)境為系統(tǒng)軟件: WindowsXP,工具軟件: .Eclipse、 SQLite 和 Android 手機(jī)模擬器。 系統(tǒng)關(guān)鍵測試點:登陸管理測試、音樂播放功能測試。 登陸功能測試 軟件運(yùn)行后,點擊登陸模塊進(jìn)入登錄界面。如果用戶輸入的用戶名錯誤暨用戶名不存在,則會給用戶彈出一個 Toast 提示用戶,“用戶不能為空”。顯示結(jié)果如圖 61所示: 河北 xxxxxxxxxx 學(xué)院 第 40 頁 共 42 頁 若密碼輸入錯誤,則通過 Toast 提示用戶“密碼錯誤,請重新輸入?!? 。顯示結(jié)果如圖 72所示: 河北 xxxxxxxxxx 學(xué)院 第 41 頁 共 42 頁 音樂播放功能測試 在播放列表單擊歌曲進(jìn)入播放界面后,開始播放音樂,并且更新歌曲進(jìn)度條和左上角的歌曲名。屏幕下方的 4個控制按鈕可準(zhǔn)確操作,包括上一首、下一首、播放和暫停功能。 音樂播放功能測試如圖 62所示 。
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1