【Android源码 栏目提醒】:文章导读:在新的一年中,各位网友都进入紧张的学习或是工作阶段。
网学会员整理了Android源码 -android音乐播放器---源代码 txt - 讲义教程的相关内容供大家参考,祝大家在新的一年里工作和学习顺利!
strings.xmlltxml versionquot1.0quot encodingquotutf-8quotgtltresourcesgt ltstring namequothelloquotgtHello World MainActivitylt/stringgt ltstring namequotapp_namequotgt乐乐乐乐音播放器lt/stringgt ltstring namequotno_filesquotgt乐乐乐乐目空lt/stringgtltstring namequotto_topquotgt...lt/stringgtlt/resourcesgtdimen.xmlltxml versionquot1.0quot encodingquotutf-8quotgtltresourcesgtltdimen namequotmusic_titlequotgt20pxlt/dimengtltdimen namequotmusic_list_titlequotgt20pxlt/dimengtltdimen namequotwidget_title_sizequotgt20pxlt/dimengtltdimen namequotnews_detailquotgt16pxlt/dimengtltdimen namequottext_sizequotgt18pxlt/dimengtltdimen namequotnews_item_titlequotgt19pxlt/dimengtltdimen namequottext_size1quotgt20pxlt/dimengtltdimen namequottitlequotgt22pxlt/dimengtltdimen namequotbutton_sizequotgt40pxlt/dimengtlt/resourcesgtcolor.xmlltxml versionquot1.0quot encodingquotutf-8quotgtltresourcesgtltcolor namequotwhitequotgtfffffflt/colorgtltcolor namequotblackquotgt000000lt/colorgtltcolor namequotwidget_titlequotgtb22222lt/colorgtltcolor namequotx_blackquotgt292421lt/colorgtltcolor namequotbluequotgt3d59ablt/colorgtltcolor namequothui_blackquotgt808a87lt/colorgtlt/resourcesgtsetting.xmlltxml versionquot1.0quot encodingquotutf-8quotgtltLinearLayout xmlns:androidquothttp://schemas.
android.com/apk/res/androidquotandroid:orientationquotverticalquot
android:layout_widthquotfill_parentquotandroid:layout_heightquotfill_parentquot
android:backgroundquotdrawable/bgquotgtltLinearLayout
android:layout_widthquotfill_parentquotandroid:gravityquotcenterquot
android:layout_heightquotwrap_contentquotandroid:backgroundquotdrawable/footer_barquotgtltTextView
android:textquot乐定quot
android:idquotid/settingquotandroid:textSizequotdimen/music_list_titlequot
android:layout_widthquotwrap_contentquotandroid:layout_heightquotwrap_contentquotgtlt/TextViewgtlt/LinearLayoutgtltLinearLayout
android:orientationquothorizontalquotandroid:layout_widthquotwrap_contentquot
android:gravityquotcenter_verticalquotandroid:layout_heightquotwrap_contentquotgtltTextView
android:textquot播放模式quot
android:idquotid/settingquotandroid:textSizequotdimen/text_sizequot
android:layout_widthquotfill_parentquotandroid:layout_heightquotwrap_contentquotgtlt/TextViewgtltRadioGroup
android:idquotid/RadioGroupquotandroid:layout_widthquotwrap_contentquot
android:layout_heightquotwrap_contentquotgtltRadioButton
android:textquot乐乐曲循quot
android:idquotid/sigle_playquotandroid:layout_widthquotwrap_contentquot
android:layout_heightquotwrap_contentquotgtlt/RadioButtongtltRadioButton
android:textquot乐序播放quot
android:idquotid/order_playquotandroid:layout_widthquotwrap_contentquot
android:layout_heightquotwrap_contentquotgtlt/RadioButtongtltRadioButton
android:textquot随机播放quot
android:idquotid/random_playquotandroid:checkedquottruequot
android:layout_widthquotwrap_contentquotandroid:layout_heightquotwrap_contentquotgtlt/RadioButtongtlt/RadioGroupgtlt/LinearLayoutgtltLinearLayout
android:orientationquothorizontalquotandroid:layout_widthquotwrap_contentquot
android:gravityquotcenter_verticalquotandroid:layout_heightquotwrap_contentquotgtltTextView
android:textquot乐乐乐歌示quot
android:idquotid/settingquotandroid:textSizequotdimen/text_sizequot
android:layout_widthquotwrap_contentquotandroid:layout_heightquotwrap_contentquot /gtltToggleButton
android:textquotquot
android:idquotid/ly_lrcquotandroid:checkedquotfalsequot
android:layout_widthquotwrap_contentquotandroid:layout_heightquotwrap_contentquot /gtlt/LinearLayoutgtltTextView
android:layout_widthquotfill_parentquotandroid:layout_heightquot150pxquotgtlt/TextViewgtltAbsoluteLayout
android:backgroundquotdrawable/footer_barquotandroid:layout_widthquotfill_parentquot
android:layout_heightquotwrap_contentquotgtltImageButton
android:idquotid/makequot
android:backgroundquotdrawable/sharequotandroid:layout_xquot270pxquot
android:layout_widthquotwrap_contentquotandroid:layout_heightquotwrap_contentquot /gtltImageButton
android:idquotid/cancelquot
android:layout_xquot5pxquotandroid:backgroundquotdrawable/backquot
android:layout_widthquotwrap_contentquotandroid:layout_heightquotwrap_contentquot /gtlt/AbsoluteLayoutgtlt/LinearLayoutgtplay_rack.xmlltxml versionquot1.0quot encodingquotutf-8quotgtltAbsoluteLayout xmlns:androidquothttp://schemas.
android.com/apk/res/androidquotandroid:layout_widthquotfill_parentquot
android:layout_heightquotfill_parentquotandroid:backgroundquotdrawable/bg1quotgtltTextView
android:layout_xquot93pxquot
android:layout_heightquotwrap_contentquotandroid:textquot乐乐乐乐音播放器quot
android:layout_yquot15pxquot
android:idquotid/title_musicquotandroid:textSizequotdimen/music_titlequot
android:layout_widthquotwrap_contentquotgtlt/TextViewgtltTextView
android:layout_xquot145pxquot
android:layout_heightquotwrap_contentquotandroid:textquotquot
android:layout_yquot65pxquot
android:idquotid/current_musicquotandroid:textSizequot18pxquot
android:textColorquotC0FF3Equotandroid:layout_widthquotwrap_contentquot
android:textStylequotboldquotgtlt/TextViewgtltTextView
android:layout_xquot65pxquot
android:layout_heightquotwrap_contentquotandroid:textSizequot18pxquot
android:textStylequotboldquot
android:textquot正在播放:quotandroid:layout_yquot65pxquot
android:textColorquotff00ffffquotandroid:layout_widthquotwrap_contentquotgtlt/TextViewgtltLinearLayout
android:layout_xquot60pxquot
android:layout_yquot310pxquotandroid:gravityquotcenterquot
android:layout_heightquotwrap_contentquotandroid:layout_widthquotwrap_contentquotgtltImageButton
android:layout_widthquotwrap_contentquotandroid:idquotid/up_btquot
android:layout_heightquotwrap_contentquotandroid:backgroundquotdrawable/upquotgtlt/ImageButtongtltImageButton
android:layout_widthquotwrap_contentquotandroid:idquotid/play_btquot
android:layout_heightquotwrap_contentquotandroid:backgroundquotdrawable/playquotgtlt/ImageButtongtltImageButton
android:layout_widthquotwrap_contentquotandroid:idquotid/stop_btquot
android:layout_heightquotwrap_contentquotandroid:backgroundquotdrawable/stopquotgtlt/ImageButtongtltImageButton
android:layout_widthquotwrap_contentquotandroid:idquotid/down_btquot
android:layout_heightquotwrap_contentquotandroid:backgroundquotdrawable/downquotgtlt/ImageButtongtltImageButton
android:layout_widthquotwrap_contentquotandroid:idquotid/sound_btquot
android:layout_heightquotwrap_contentquotandroid:backgroundquotdrawable/soundquotgtlt/ImageButtongtlt/LinearLayoutgtltSeekBar
android:idquotid/seekbarquot
android:layout_widthquot245pxquotandroid:layout_heightquot20pxquot
android:layout_xquot40pxquot
android:layout_yquot260pxquotandroid:progressDrawablequotdrawable/seekbar_stylequot
android:thumbquotdrawable/thumbquotandroid:paddingLeftquot18pxquot
android:paddingRightquot15pxquotandroid:paddingTopquot5pxquot
android:paddingBottomquot5pxquot
android:progressquot0quotandroid:maxquot100quot
android:secondaryProgressquot0quotgtlt/SeekBargtltTextView
android:layout_xquot60pxquot
android:layout_heightquotwrap_contentquotandroid:textquot00:00quot
android:layout_yquot280pxquot
android:idquotid/current_time_textquotandroid:layout_widthquotwrap_contentquotgtlt/TextViewgtltTextView
android:layout_xquot230pxquot
android:layout_heightquotwrap_contentquotandroid:textquot00:00quot
android:layout_yquot280pxquot
android:idquotid/end_Time_Textquotandroid:layout_widthquotwrap_contentquotgtlt/TextViewgtltImageButton
android:layout_widthquotwrap_contentquotandroid:layout_xquot5pxquot
android:layout_yquot390pxquot
android:idquotid/list_btquotandroid:layout_heightquotwrap_contentquot
android:backgroundquotdrawable/sharequotgtlt/ImageButtongtltImageButton
android:layout_xquot270pxquotandroid:layout_heightquotwrap_contentquot
android:layout_yquot390pxquotandroid:idquotid/back_btquot
android:backgroundquotdrawable/backquotandroid:layout_widthquotwrap_contentquotgtlt/ImageButtongtltLinearLayout
android:orientationquothorizontalquotandroid:gravityquotcenterquot
android:layout_yquot370pxquotandroid:layout_heightquotwrap_contentquot
android:layout_widthquotfill_parentquotgtltTextView
android:layout_heightquotwrap_contentquotandroid:textColorquot8deeeequot
android:idquotid/lrcTextquotandroid:layout_widthquotwrap_contentquotgtlt/TextViewgtlt/LinearLayoutgtlt/AbsoluteLayoutgtplay_list.xmlltxml versionquot1.0quot encodingquotutf-8quotgtltLinearLayout xmlns:androidquothttp://schemas.
android.com/apk/res/androidquotandroid:orientationquotverticalquot
android:layout_widthquotfill_parentquotandroid:layout_heightquotfill_parentquot
android:backgroundquotdrawable/list_bgquotgtltLinearLayout
android:layout_widthquotfill_parentquotandroid:gravityquotcenterquot
android:layout_heightquotwrap_contentquotandroid:backgroundquotdrawable/footer_barquotgtltTextView
android:textquot歌曲列表quot
android:idquotid/music_listquotandroid:textSizequotdimen/music_list_titlequot
android:textStylequotboldquotandroid:layout_widthquotwrap_contentquot
android:layout_heightquotwrap_contentquotgtlt/TextViewgtlt/LinearLayoutgtltListView
android:idquotid/show_play_listquotandroid:layout_widthquotfill_parentquot
android:layout_heightquot337pxquotgtlt/ListViewgtltLinearLayout
android:layout_widthquotfill_parentquotandroid:gravityquotrightquot
android:layout_heightquotwrap_contentquotandroid:backgroundquotdrawable/footer_barquotgt ltImageButton
android:idquotid/backquot
android:backgroundquotdrawable/backquotandroid:layout_widthquotwrap_contentquot
android:layout_heightquotwrap_contentquotgtlt/ImageButtongtlt/LinearLayoutgtlt/LinearLayoutgtmenu.xmlltxml versionquot1.0quot encodingquotutf-8quotgtltLinearLayout xmlns:androidquothttp://schemas.
android.com/apk/res/androidquotandroid:orientationquotverticalquot
android:layout_widthquotfill_parentquotandroid:layout_heightquotfill_parentquot
android:backgroundquotdrawable/list_bgquotgtltLinearLayout
android:layout_widthquotfill_parentquotandroid:gravityquotcenterquot
android:layout_heightquotwrap_contentquotandroid:backgroundquotdrawable/footer_barquotgtltTextView
android:textquot乐乐quot
android:idquotid/select_itemquotandroid:textSizequotdimen/music_list_titlequot
android:textStylequotboldquotandroid:layout_widthquotwrap_contentquot
android:layout_heightquotwrap_contentquotgtlt/TextViewgtlt/LinearLayoutgtltListView
android:idquotid/menuquot
android:layout_widthquotwrap_contentquotandroid:backgroundquotdrawable/list_item_bgquot
android:layout_heightquotwrap_contentquotgtlt/ListViewgtltTextView
android:layout_widthquotwrap_contentquotandroid:layout_heightquot50pxquotgtlt/TextViewgtltLinearLayout
android:layout_widthquotfill_parentquot
android:gravityquotrightquotandroid:layout_heightquotwrap_contentquot
android:backgroundquotdrawable/footer_barquotgtltImageButton
android:idquotid/backquot
android:backgroundquotdrawable/backquotandroid:layout_widthquotwrap_contentquot
android:layout_heightquotwrap_contentquotgtlt/ImageButtongtlt/LinearLayoutgtlt/LinearLayoutgtfile_row.xmlltxml versionquot1.0quot encodingquotutf-8quotgtltLinearLayout xmlns:androidquothttp://schemas.
android.com/apk/res/androidquotandroid:orientationquothorizontalquot
android:layout_widthquotfill_parentquot
android:backgroundquotdrawable/list_item_xmlquotandroid:layout_heightquotwrap_contentquot
android:gravityquotcenter_verticalquotgtltImageView
android:idquotid/image_Iconquot
android:layout_widthquot30pxquotandroid:layout_heightquot30pxquot
android:backgroundquotdrawable/iconquotgtlt/ImageViewgtltTextView
android:layout_widthquot10pxquotandroid:layout_heightquotwrap_contentquot /gtltTextView
android:textquotquot
android:idquotid/textquotandroid:layout_widthquotwrap_contentquot
android:layout_heightquotwrap_contentquot
android:textColorquotcolor/x_blackquot
android:textSizequotdimen/text_sizequotgtlt/TextViewgtlt/LinearLayoutgtdirectory_list.xmlltxml versionquot1.0quot encodingquotutf-8quotgtltLinearLayout xmlns:androidquothttp://schemas.
android.com/apk/res/androidquotandroid:orientationquotverticalquot
android:layout_widthquotfill_parentquotandroid:layout_heightquotfill_parentquot
android:backgroundquotdrawable/list_bgquotgtltLinearLayout
android:layout_widthquotfill_parentquotandroid:gravityquotcenterquot
android:layout_heightquotwrap_contentquotandroid:backgroundquotdrawable/footer_barquotgtltTextView
android:textquotSD卡quot
android:idquotid/store_cardquot
android:textStylequotboldquotandroid:layout_widthquotwrap_contentquot
android:layout_heightquotwrap_contentquotandroid:textSizequotdimen/music_list_titlequotgtlt/TextViewgtlt/LinearLayoutgtltListView
android:idquotid/
android:listquot
android:layout_widthquotwrap_contentquotandroid:layout_heightquotwrap_contentquot /gtltTextView
android:layout_widthquot10pxquotandroid:layout_heightquotwrap_contentquot /gtltTextView
android:idquotid/
android:emptyquot
android:layout_widthquotwrap_contentquotandroid:layout_heightquotwrap_contentquot
android:textquotstring/no_filesquot /gtlt/LinearLayoutgtStringHelper.javapackage com.Rain.music.utilimport java.util.ArrayListimport java.util.Listpublic class StringHelper public static ListltStringgt spiltStringString str ListltStringgt music_List new ArrayListltStringgtString musics str.splitquotquotfor int i 0 i lt musics.length i music_List.addmusicsireturn music_Listpublic static String toStringAllListltStringgt music_List StringBuffer buffer new StringBufferif music_List.size gt 0 for int i 0 i lt music_List.size i buffer.appendmusic_List.getiif i lt music_List.size - 1buffer.appendquotquotreturn buffer.toStringMusicHelp.javapackage com.Rain.music.utilimport
android.media.MediaPlayerimport
android.os.Handlerpublic class MusicHelp private static MediaPlayer player nullprivate static Handler objHandler nullpublic static MediaPlayer getMediaPlayer if player nullplayer new MediaPlayerreturn playerpublic static Handler getHandler if objHandler nullobjHandler new Handlerreturn objHandlerMusicAdapter.javapackage com.Rain.music.utilimport java.io.Fileimport java.util.Listimport com.Rain.music.activity.Rimport com.Rain.music.dao.DBProviderimport
android.content.ContentResolverimport
android.content.Contextimport
android.database.Cursorimport
android.graphics.Bitmapimport
android.graphics.BitmapFactoryimport
android.net.Uriimport
android.view.LayoutInflaterimport
android.view.Viewimport
android.view.ViewGroupimport
android.widget.BaseAdapterimport
android.widget.ImageViewimport
android.widget.TextViewpublic class MusicAdapter extends BaseAdapter private Bitmap down_Iconpublic Bitmap getDown_Icon return down_Iconpublic void setDown_IconBitmap downIcon down_Icon downIconpublic Bitmap getUp_Icon return up_Iconpublic void setUp_IconBitmap upIcon up_Icon upIconpublic Bitmap getSuspend_Icon return suspend_Iconpublic void setSuspend_IconBitmap suspendIcon suspend_Icon suspendIconpublic Bitmap getPlay_Icon return play_Iconpublic void setPlay_IconBitmap playIcon play_Icon playIconLayoutInflater inflaterprivate Bitmap up_Iconprivate Bitmap suspend_Iconprivate Bitmap play_Iconprivate Bitmap music_Fileprivate Bitmap father_File// 乐父目private Bitmap folder_File// 乐目//private Bitmap docm_Fileprivate ListltStringgt listContext contextpublic MusicAdapterContext context ListltStringgt list this.list listthis.context contextinflater LayoutInflater.fromcontext//乐乐乐位工厂play_Icon BitmapFactory.decodeResourcecontext.getResourcesR.drawable.playup_Icon BitmapFactory.decodeResourcecontext.getResourcesR.drawable.upsuspend_Icon BitmapFactory.decodeResourcecontext.getResourcesR.drawable.suspenddown_Icon BitmapFactory.decodeResourcecontext.getResourcesR.drawable.downmusic_File BitmapFactory.decodeResourcecontext.getResourcesR.drawable.music_filefather_File BitmapFactory.decodeResourcecontext.getResourcesR.drawable.father_filefolder_File BitmapFactory.decodeResourcecontext.getResourcesR.drawable.folder_file/docm_File BitmapFactory.decodeResourcecontext.getResourcesR.drawable.doc_file/Overridepublic int getCount return list.sizeOverridepublic Object getItemint position return list.getpositionOverridepublic long getItemIdint position return positionOverridepublic View getViewint position View convertView ViewGroup parent ViewHolder holderif convertView null holder new ViewHolderconvertView inflater.inflateR.layout.file_row nullholder.text TextView convertView.findViewByIdR.id.textholder.icon ImageView convertView.findViewByIdR.id.image_IconconvertView.setTagholder else holder ViewHolder convertView.getTag//holder.text.setTextColorColor.WHITE//holder.text.setTextSize22if list.getposition.toString.equalsquot...quot // 乐如果是父目holder.text.setTextquotBackquotholder.icon.setImageBitmapfather_Fileif list.getposition.toString.equalsquot/sdcardquot list.getposition.toString.equalsquot/systemquot holder.text.setTextlist.getpositionholder.icon.setImageBitmapfolder_Fileelse String path nullif quot...quot.equalslist.getposition.toString path querylist.getposition.toStringif path null File f new Filepathholder.text.setTextlist.getpositionif f.isDirectory holder.icon.setImageBitmapfolder_File else if path.indexOfquot.mp3quot -1 holder.text.setTextlist.getpositionholder.icon.setImageBitmapmusic_File else if list.getposition.indexOfquot.mp3quot -1 holder.text.setTextlist.getpositionholder.icon.setImageBitmapmusic_File else holder.text.setTextlist.getposition holder.icon.setImageBitmapfolder_File if list.getposition.equalsquot...quot holder.icon.setImageBitmapfather_Filereturn convertViewpublic String queryString fileName // 乐乐歌曲路径ContentResolver cr context.getContentResolverUri uri DBProvider.CONTENT_URIString projection quotpathquot String selection quotfileNamequotString selectionArgs fileName Cursor c cr.queryuri projec.