ÆÄÀÏ ¸®½ºÆ® ±¸Çϱâ
¼Ò¸® ÆÄÀÏÀ» PlayÇϱâ À§ÇØ mp3 ÆÄÀÏÀÌ ÇÊ¿äÇÏ´Ù. ¼Ò¸® ¹× Áøµ¿¿¡¼´Â Music Æú´õ¿¡ Test.mp3 ÆÄÀÏÀ» º¹»çÇÏ¿© ½ÇÇàÇÏ°Ô ÇßÀ¸³ª ½ÇÁ¦ ÇÁ·Î±×·¥¿¡¼´Â ½º¸¶Æ®Æù¿¡ ÀÖ´Â mp3 ÆÄÀÏÀ» ¸ðµÎ Ç¥½ÃÇÏ°í ¼±ÅÃÇÏ¿© ¼³Á¤Çϵµ·Ï ÇØ¾ß¸¸ ÇÑ´Ù.
¿©±â¼´Â mp3 »Ó¸¸ ¾Æ´Ï¶ó ¿øÇÏ´Â ÆÄÀÏÀ» ¸®½ºÆ®·Î Ç¥½ÃÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ ¼³¸íÇÑ´Ù.
FileListSampleÀ̶ó´Â ÇÁ·ÎÁ§Æ®¸¦ ¸¸µé°í ResourcesÀÇ layoutÀÇ main.axml ÆÄÀÏÀ» ¿¾î ListView¸¦ »ðÀÔÇÑ ÈÄ id¸¦ @+id/listViewFile·Î ¼öÁ¤ÇÑ´Ù
layout¿¡¼ ¸¶¿ì½º ¿ìÃø ¹öưÀ» Ŭ¸¯ÇÏ¿© »ý¼ºµÈ ÆË¾÷ ¸Þ´º AddÀÇ ºÎ¸Þ´º New ItemÀ» ¼±ÅÃÇÏ¸é ´ÙÀ½°ú °°Àº ´ëÈ »óÀÚ°¡ »ý¼ºµÈ´Ù.
XML FileÀ» ¼±ÅÃÇϰí Name¿¡ ListItems.xmlÀ» ÀÔ·ÂÇϰí Add¸¦ ¼±ÅÃÇÏ¸é ´ÙÀ½°ú °°ÀÌ ListItems.xml ÆÄÀÏÀÌ Ãß°¡µÈ´Ù.
ListItems.xml ÆÄÀÏ¿¡ ´ÙÀ½°ú °°ÀÌ ÀÔ·ÂÇÑ ÈÄ ÀúÀåÇÑ´Ù.
<TextView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@android:id/text1" android:layout_width="fill_parent" android:layout_height="wrap_content" android:textAppearance="?android:attr/textAppearanceLarge" android:gravity="center_vertical" android:paddingLeft="6dip" android:minHeight="?android:attr/listPreferredItemHeight" android:textColor="#ffffffff" /> |
¿©±â¸¦ Ŭ¸¯ÇÏ¿© FileListManager.cs¸¦ ´Ù¿î¹Þ¾Æ ÇÁ·ÎÁ§Æ®¿¡ Ãß°¡ÇÑ ÈÄ MainActivity.cs¸¦ ¿¾î ´ÙÀ½°ú °°ÀÌ ¼öÁ¤ÇÑ´Ù.
¸ÕÀú FileListManager Ŭ·¡½º¸¦ »ç¿ëÇϱâ À§ÇØ CommonLibÀ» usingÇϰí ListViewÀÇ Å¬¸¯ À̺¥Æ®¸¦ ¹Þ±âÀ§ÇØ ListView.IOnItemClickListener·ÎºÎÅÍ »ó¼ÓÀ» ¹ÞÀ¸¸ç, SetContentView(Resource.Layout.Main);À» »ì¸°´Ù.
using CommonLib;
namespace FileListSample { [Activity(Label = "FileListSample", MainLauncher = true, Icon = "@drawable/icon")] public class MainActivity : Activity, ListView.IOnItemClickListener { ArrayAdapter listAdapter; string[] fileArray = null; protected override void OnCreate(Bundle bundle) { base.OnCreate(bundle);
// Set our view from the "main" layout resource SetContentView (Resource.Layout.Main); |
½º¸¶Æ®ÆùÀÇ MP3 ÆÄÀÏÀ» ¸ðµÎ ÀÐ¾î ¸®½ºÆ®·Î Ç¥½ÃÇÑ´Ù.
//½º¸¶Æ®Æù¿¡ ÀÖ´Â ¸ðµç MP3 ÆÄÀÏÀÇ ¸®½ºÆ®(Æú´õ¸í Æ÷ÇÔ)¸¦ ±¸ÇÑ´Ù. this.fileArray = FileListManager.Get(".mp3");
//fileArray¿¡¼ ÆÄÀϸíÀ» ±¸ÇØ ¹®ÀÚ¿ÀÌ 20¹®ÀÚ º¸´Ù ±æ °æ¿ì 20¹®ÀÚ·Î ¸ÂÃß¾î(17¹®ÀÚ·Î Àß¶ó ...À» Ãß°¡ÇÏ¿© 20¹®ÀÚ·Î ¸ÂÃã) ³Ñ°ÜÁØ´Ù string[] fileNames = FileListManager.GetAdjustFileNames(this.fileArray, 20);
//ListItems.xml ÆÄÀÏ¿¡ Ç¥ÇöÇÑ Çü½ÄÀ¸·Î fileNamesÀÇ ÆÄÀÏ ¸®½ºÆ®¸¦ listAdapter·Î ¸¸µç´Ù. this.listAdapter = new ArrayAdapter<string>(this, Resource.Layout.ListItems, fileNames); //Main.axml¿¡ Ãß°¡ÇÑ listView¸¦ ¾ò´Â´Ù. ListView listView = (ListView)FindViewById(Resource.Id.listViewFile); //listView¿¡ listAdapter¸¦ SetÇÔ¿¡ÀÇÇØ fileNameÀÇ ÆÄÀÏ ¸®½ºÆ®¸¦ Ç¥½ÃÇÑ´Ù. listView.SetAdapter(this.listAdapter); |
listViewÀÇ Å¬¸¯À̺¥Æ®¸¦ ¹ÞÀ» Ŭ·¡½º°¡ ÀÚ½Å(this)À̶ó´Â °ÍÀ» ¼³Á¤Çϰí OnItemClickÇÔ¼ö¸¦ ¸¸µé¾î Ŭ¸¯µÇ¾úÀ» ¶§ È£ÃâµÇµµ·Ï Çϸç Toast¸¦ ÀÌ¿ëÇÏ¿© ¼±ÅÃµÈ ÆÄÀÏÀ» Ç¥½ÃÇØ ÁØ´Ù.
listView.OnItemClickListener = this; }
public void OnItemClick(AdapterView parent, View view, int position, long id) { int nCount = this.fileArray.Length; if (position < 0 || position >= nCount) return; string strPathFile = this.fileArray[position]; Toast.MakeText(this, strPathFile, ToastLength.Short).Show(); } |
´ÙÀ½È¸éÀº ½ÇÇàÇÏ¿© ¶ó¸®¾Æ³×ÀÇ ÃàÁ¦_L.Mozzani.mp3ÆÄÀÏÀ» Ŭ¸¯ÇÏ¿© ¸Þ½ÃÁö¸¦ Ç¥½ÃÇÑ È¸éÀÌ´Ù.
Âü°í·Î ½Ã¹Ä·¹ÀÌÅÍ¿¡ MP3 ÆÄÀÏÀ» º¹»çÇϱâ À§Çؼ´Â Ž»ö±â¿¡¼ º¹»çÇϰíÀÚ ÇÏ´Â MP3 ÆÄÀÏÀ» ¸¶¿ì½º·Î Ŭ¸¯ÇÏ¿© ½Ã¹Ä·¹ÀÌÅÍ¿¡ µå·¹±×¾Ø µå¶øÇÏ¸é µÈ´Ù.
´Ù¿î·Îµå