Android、java初心者です。皆様のお力をお貸しください
端末内(SDカードでなく)の音楽データを ラジオボタン付ListViewで表示して選択すると音楽がなるような
アプリを作成しています。
ListViewに表示はできたのですが、選択した項目を再生する方法がわかりません。
IDを取得する必要があるとのことですが選択した項目のIDを取得するにはどうしたらよいのでしょうか?
回答よろしくお願いします。
以下がソースコードとなっています
package
1 2import android.app.Activity; 3import android.content.ContentResolver; 4import android.database.Cursor; 5import android.media.MediaPlayer; 6import android.net.Uri; 7import android.os.Bundle; 8import android.provider.MediaStore; 9import android.util.Log; 10import android.util.SparseBooleanArray; 11import android.view.Menu; 12import android.view.MenuItem; 13import android.view.View; 14import android.widget.AdapterView; 15import android.widget.ArrayAdapter; 16import android.widget.ListView; 17import android.widget.Toast; 18 19import java.io.IOException; 20import java.util.List; 21 22 23public class MusicActivity extends Activity implements AdapterView.OnItemClickListener{ 24 25 private ListView listView; 26 private Cursor cursor; 27 private ArrayAdapter adapter; 28 private MediaPlayer mediaPlayer; 29 30 @Override 31 protected void onCreate(Bundle savedInstanceState) { 32 super.onCreate(savedInstanceState); 33 setContentView(R.layout.activity_music2); 34 35 listView = (ListView) findViewById(R.id.listView); 36 listView.setOnItemClickListener(this); 37 listView.setScrollbarFadingEnabled(false); 38 listView.setChoiceMode(ListView.CHOICE_MODE_SINGLE); 39 40 41 adapter = new ArrayAdapter<String>( 42 this, 43 android.R.layout.simple_list_item_single_choice 44 45 ); 46 47 cursor = getContentResolver().query( 48 MediaStore.Audio.Media.INTERNAL_CONTENT_URI, 49 50 new String[]{ 51 MediaStore.Audio.Media.ALBUM , 52 MediaStore.Audio.Media.ARTIST , 53 MediaStore.Audio.Media.TITLE, 54 MediaStore.Audio.Media._ID 55 }, 56 null, 57 null, 58 null 59 ); 60 61 if (cursor.moveToFirst()) { 62 63 64 do{ 65 adapter.add(cursor.getString(2) + cursor.getInt(3)); 66 67 }while(cursor.moveToNext()); 68 69 70 } 71 /*SparseBooleanArray checked = listView.getCheckedItemPositions(); 72 for(int i = 0; i<checked.size();i++){ 73 if(checked.valueAt(i)){ 74 75 } 76 }*/ 77 78 listView.setAdapter(adapter); 79 80 cursor.close(); 81 } 82 83 84 @Override 85 public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 86 87 88 } 89} 90 91コード
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/08/30 11:45
2015/08/30 15:12
2015/08/30 15:35
2015/08/30 16:09
2015/08/31 00:15