홈>
좋아, 이제 뮤직 플레이어 리그에 문제가있어 실제 노래를 재생할 수 있지만 다음 곡을 재생할 때 오류가 발생한다
내 디렉토리에 3 곡의 노래가 있습니다
여기에 변수와 onCreate 메소드가 있습니다
ListView listaCanciones;
List<String> list;
ListAdapter adapter;
MediaPlayer mp; ;
int posicion = 0;
Button play_pause, btn_repetir;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_explorador);
play_pause = (Button)findViewById(R.id.btnPlay_Pause);
listaCanciones = findViewById(R.id.lv);
list = new ArrayList<>();
Field[] fields = R.raw.class.getFields();
for (int i = 0; i < fields.length; i++){
list.add(fields[i].getName());
}
adapter = new ArrayAdapter<>(this, R.layout.list_view_configuracion, list);
listaCanciones.setAdapter(adapter);
listaCanciones.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
if(mp != null ){
mp.stop();
mp.release();
}
int resID = getResources().getIdentifier(list.get(i), "raw", getPackageName());
mp = MediaPlayer.create(Explorador.this, resID);
mp.start();
play_pause.setBackgroundResource(R.drawable.pausa);
//Toast.makeText(getApplicationContext(), "Reproduciendo", Toast.LENGTH_SHORT).show();
}
});
}
모든 것이 잘 작동하고 실제 노래를 일시 중지하는 방법도 있습니다
public void play_pause(View view){
if (mp.isPlaying()){
mp.pause();
play_pause.setBackgroundResource(R.drawable.reproducir);
Toast.makeText(this, "Pausa", Toast.LENGTH_SHORT).show();
}
else {
mp.start();
play_pause.setBackgroundResource(R.drawable.pausa);
Toast.makeText(this, "Reproduciendo", Toast.LENGTH_SHORT).show();
}
하지만 내 방법으로는 다음 곡을 전달하는 방법을 모르겠습니다
public void Next(View view){
if (posicion < list.length -1){
if(list[posicion].isPlaying()){
list[posicion].stop();
list++;
list[posicion].start();
}
else {
posicion++;
}
}
else {
Toast.makeText(this, "No more songs", Toast.LENGTH_SHORT).show();
}
}
- 답변 # 1
관련 자료
- python - 일과 시간을 시간으로 어떻게 변환합니까?
- python 3.x - HTML에서 다음 요소에 도달하는 방법
- 시간을 얻고 파이썬에서 UTC로 변환하는 방법
- wc - 그리고 ls 또는 find?
- file - C ++에서 ofstream 개체의 다음 줄로 건너 뛰는 방법
- encoding - 이동 중에 인터페이스 구조를 저장하고로드하는 방법
- sql - 월 및 연도별로 그룹화하는 방법은 무엇입니까?
- android - Receiver 및 MVVM을 방송하는 방법?
- c# - ASPNET에서 ConcurrentDictionary 및 Task를 사용하는 방법
- 한 줄의 코드에서 R의 열을 부분 집합 화하고 합계하는 방법
- swift - popViewController 및 데이터를 다시 보내는 방법
- bash - 파일에서 변수를 정의하고 설정하는 방법은 무엇입니까?
- c# - 비디오 리소스를 재생하는 방법
- reactjs - React 및 Node에서 테스트하는 방법은 무엇입니까?
- typescript - `rush build`와`tsc -b`가 함께 잘 작동합니까?
- SAS EG의 루프에서 API와 데이터를주고 받고 수집하려면 어떻게해야합니까?
- machine learning - R에서 1과 0을 남성과 여성으로 대체하는 방법은 무엇입니까?
- html - 같은 행에서 사이드 바와 본문 섹션을 수정하는 방법은 무엇입니까?
- html - 이 div를 다른 옆에 배치하는 방법은 무엇입니까?
- javascript - 키를 분리하고 해당 키를 배열로 푸시하는 방법
관련 질문
- java : 화면이 잠겨 있거나 꺼져 있을 때 카메라 셔터 onkeyevent가 있는 Android 앱
- java : Webview에서 사용자 이름 및 비밀번호와 같은 로그인 자격 증명을 저장하는 방법
- Android Java가 실행되지 않음 [중복]
- java : Android 그래픽으로 그림판에서 그래프 그리기
- java : bumblebee android studio 버전으로 업데이트할 때 오류 gradle
- java : Icon MenuItem 안드로이드 앱을 변경하는 방법
- java : 앱에 암시적 내부 의도 취약점이 있습니다.
- java : Android 앱 -지도 조각에서 사라지는 Google 지도 위치 마커
- java : URI를 업데이트하려고 할 때 FileNotFoundException이 발생하는 ActivityResultContracts.TakePicture()
- java : android studio에서 SQLite 데이터가 지속되지 않음
어떤 오류가 있습니까?
Next()
에서 방법, 당신은 MediaPlayer의 목록이있는 것처럼하고 있습니다. 그러나 하나의 플레이어와 여러 개의 오디오 파일 만 있습니다. 다음과 같이하면됩니다 :현재 위치 검색
현재 재생중인 파일을 중지
onItemClick()
에서 한 것과 같은 새로운 포지션으로 새로운 선수를 시작하십시오 방법.