안드로이드 개발 질문/답변
(글 수 45,052)
case 52:
work_tag = "FM//'"+ +"*";
break;
else if(a2 == 52){
radioView.setVisibility(View.GONE);
longView.setVisibility(View.VISIBLE);
String selection = MediaStore.Audio.Media.IS_MUSIC + " != 0";
//your projection statement
String[] projection = {
MediaStore.Audio.Media._ID,
MediaStore.Audio.Media.ARTIST,
MediaStore.Audio.Media.TITLE,
MediaStore.Audio.Media.DATA,
MediaStore.Audio.Media.DISPLAY_NAME,
MediaStore.Audio.Media.DURATION,
MediaStore.Audio.Media.ALBUM_ID
};
//query
Cursor cursor = this.managedQuery(
MediaStore.Audio.Media.EXTERNAL_CONTENT_URI,
projection,
selection,
null,
null);
int a[]= new int[]{android.R.id.text1, android.R.id.text2};
ListAdapter adapter = new SimpleCursorAdapter(this,android.R.layout.simple_list_item_single_choice, cursor,
new String[]{MediaStore.Audio.Media.TITLE,MediaStore.Audio.Media.DATA}, a);
longlist.setAdapter(adapter);
longlist.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
longlist.setOnItemClickListener(onItemClickListener1);
}
이런식으로 했을때
MediaStore.Audio.Media.DATA
이값만 뽑아서
"FM//'"+ +"*";
여기에 넣어주려고하는데.
longlist.getItemAtPosition(position).toString()
이걸해봣지만 역시 될리없겠지 했는대 진짜안됩니다.
흠 ... 저걸어떻게빼올수있을까요 ...




cursor.getColumnIndexOrThrow 함수 사용해서 칼럼 인덱스를 먼저 얻으시구요
cursor.moveToNext 함수로 얻어온 레코드들을 하나씩 훑으면서
cursor.getString, cursor.getInt, cursor.getLong 등등의 함수를 써서 데이터를 얻으시면 됩니다.