1
저는 RecyclerView
으로 활동을합니다;활동이 끝나면 어떻게 RecyclerView ViewHolder에서 스레드를 멈출 수 있습니까?
RecyclerView
에는 검색 바 및 재생 버튼이있는 노래 목록을 만들었습니다.
가 SeekBar를,이 스레드
하지만 변경 작업을 사용하여 음악의 현재 위치와 이동, 음악은 내가 활동을 변경할 때 내가 원하는
을 중지하지만 오류가, 음악은 중단하고 오류없는
도와주세요
//seekbar change listener
seekbar.setMax(music.getDuration());
seekbar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {
@Override
public void onStopTrackingTouch(SeekBar seekBar) {
// TODO Auto-generated method stub
}
@Override
public void onStartTrackingTouch(SeekBar seekBar) {
// TODO Auto-generated method stub
}
@Override
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
// TODO Auto-generated method stub
if(fromUser)
music.seekTo(progress);
}
});
//music playing
public void button(View v){
if(music.isPlaying()){
music.stop();
try {
music.prepare();
} catch (IllegalStateException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
music.seekTo(0);
button.setText(R.string.start);
seekbar.setProgress(0);
}else{
music.start();
button.setText(R.string.stop);
Thread();
}
}
//Thread
public void Thread(){
Runnable task = new Runnable(){
public void run(){
while(music.isPlaying()){
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
seekbar.setProgress(music.getCurrentPosition());
}
}
};
Thread thread = new Thread(task);
thread.start();
}
onStop() 또는 onPause() 메소드에서 메소드를 중지 시키려고 했습니까? – ZeroOne
나는 그것을 시도했다. 그러나 그것은 recyclerview.viewholder에있다. 그래서 onStop()이나 onPause 메소드를 사용할 수 없다. –