Adding Mp3 File On Recyclerview
Hi I create arecyclerview apps. when I click an item it shows text and image but I want to add r.raw.b mp3 file as a third item. How could I do it? here is detailed activity. How
Solution 1:
public class PlaylistActivity extends AppCompatActivity {
privateRecyclerView recyclerView;
privateSongsAdapter songsAdapter;
SongsManager songsManager;
StringMEDIA_PATH = Environment.getExternalStorageDirectory() + "";
ArrayList<HashMap<String, String>> songList=newArrayList<>();
@OverrideprotectedvoidonCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_playlist);
recyclerView=(RecyclerView)findViewById(R.id.playlistactivityrecyclerview);
songsManager=newSongsManager();
songList =songsManager.getPlayList(MEDIA_PATH);
songsAdapter=newSongsAdapter(songList);
recyclerView.setLayoutManager(newLinearLayoutManager(getApplicationContext()));
recyclerView.setAdapter(songsAdapter);
Toast.makeText(getApplicationContext(),"Hi",Toast.LENGTH_LONG).show();
}
}
Solution 2:
public class SongsManager {
publicArrayList<HashMap<String, String>> getPlayList(String rootPath) {
ArrayList<HashMap<String, String>> fileList = newArrayList<>();
try {
File rootFolder = newFile(rootPath);
File[] files = rootFolder.listFiles(); //here you will get NPE if directory doesn't contains any file,handle it like this.for (File file : files) {
if (file.isDirectory()) {
if (getPlayList(file.getAbsolutePath()) != null) {
fileList.addAll(getPlayList(file.getAbsolutePath()));
} else {
break;
}
} elseif (file.getName().endsWith(".mp3")) {
HashMap<String, String> song = newHashMap<>();
song.put("file_path", file.getAbsolutePath());
song.put("file_name", file.getName());
fileList.add(song);
}
}
return fileList;
} catch (Exception e) {
returnnull;
}
}
}
Post a Comment for "Adding Mp3 File On Recyclerview"