ファイルを、忍者ブログに置いときました。
http://sattva.asasvata.net/Entry/15/
書かなくてもいいような気もしますが一応。
shuffleへの下準備を。MusicPlayerから。
フィールドに
private ArrayList<Integer> numList; 追加。
private int count; 追加。
コンストラクタに
count = 0; 追加。
public ArrayList<Integer> getNumList() {
return numList;
}
public void setNumList(ArrayList<Integer> array) {
numList = array;
}
public int getCount() {
return count;
}
public void setCount(int n) {
count = n;
musicNum = numList.get(count);//これは、いらないかも
}
追加。要らないのもあるかも。
ほいで、playMusic
musicNum = numList.get(count); 追加。
setTitle()の上に。
次は、onCompletion
++musicNum を ++count に変更。
musicNum = 0 を count = 0 に変更。
sdmp.getMflm().musicFileListMaker(dirList.get(dirNum), musicList);
の下に、
addNum(); 追加。2ヶ所とも。それから、
public void addNum() {
numList.clear();
for (int i = 0; i < musicList.size(); i++) {
numList.add(i);
}
}
追加。Activityは、フィールドに
private ArrayList<Integer> musicNumList; 追加。
onCreate内
musicFileList = new ArrayList<String>(); 追加。
musicNumList = new ArrayList<Integer>(); 追加。
onItemSelected内
if (musicFileList == null) {
musicFileList = new ArrayList<String>();
mflm.musicFileListMaker(musicDirList.get(position), musicFileList);
}
を、
if (!startFlag) {
mflm.musicFileListMaker(musicDirList.get(position), musicFileList);
addNumList();
}
に変更。それと、
musicPlayer.setNumList(musicNumList); 追加。
で、onClickBack内
int n = musicPlayer.getCount() - 1; に変更。
if (repeatButton.isChecked())のとこ
n = musicPlayer.getNumList().size() - 1;
musicPlayer.setCount(n);
に変更。それから、
musicPlayer.setDirNum(num);
mflm.musicFileListMaker(musicDirList.get(num), musicFileList);
を、
changeMusicList(num); に変更。
その下を
n = musicPlayer.getNumList().size() - 1;
musicPlayer.setCount(n);
に変更。2ヶ所とも。あと、一番下の} else {のとこ
musicPlayer.setCount(n); に変更。
そいで、onClickNext
int n = musicPlayer.getCount() + 1; 変更。
if (n < musicPlayer.getNumList().size()) {
musicPlayer.setCount(n);
に変更。ほいで、n = 0;の下
musicPlayer.setCount(n); 変更。
そいから、
musicPlayer.setDirNum(num);
mflm.musicFileListMaker(musicDirList.get(num), musicFileList);
を、
changeMusicList(num);
に変更。2ヶ所とも。それと、setAndPlayMusicを、
private void setAndPlayMusic() {
if (spinnerPosition != musicPlayer.getDirNum()) {
changeMusicList(spinnerPosition);
}
musicPlayer.setCount(listPosition);
musicPlayer.playMusic();
changeMusicFlag = false;
}
に変更。あとは、
private void addNumList() {
musicNumList.clear();
for (int i = 0; i < musicFileList.size(); i++) {
musicNumList.add(i);
}
}
private void changeMusicList(int num) {
musicPlayer.setDirNum(num);
mflm.musicFileListMaker(musicDirList.get(num), musicFileList);
addNumList();
}
を追加。たぶんこんだけ。
ちょっとした思いつきなんですが、うまくいくか・・・。
まあ、大体で。
ファイルは、一応ダウロードできることを確認。
が、自分だからかも。まあ、大体で。
0 件のコメント:
コメントを投稿