Ich bin ein Anfänger und ich begann mit dem Erstellen einer Radio-App, die viele Stationen hat, aber ich habe ein Problem.Schwierigkeitsgrad zwischen Absichten in Java (Android Studio)
Wenn ich "Play" für das Radio klicke, fängt es an zu spielen, dann komme ich zurück zu der vorherigen Aktivität (Senderliste) und wenn ich wieder zu demselben Radio komme und "Pause" drücke, wird es diffus " Nicht spielen". (Ich habe einen Toast gemacht, so dass, wenn ich "Pause" drücke, während das Radio nicht spielt, es diffundiert "Nicht spielen"), aber das Radio ist immer noch "Spielen". Hier
ist der Code für die 2-Tasten (Wiedergabe und Pause):
btnPlayMFM.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (isOnline() == true) {
if (isPlaying() == false) {
Toast t = Toast.makeText(MosaiqueFM.this, "Loading \nPlease Wait", 10000);
t.show();
try {
mediaPlayer.reset();
mediaPlayer.setDataSource(stream_url);
mediaPlayer.prepareAsync();
mediaPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mp) {
mp.start();
}
});
} catch (IOException e) {
e.printStackTrace();
}
} else if (isPlaying() == true) {
Toast t2 = Toast.makeText(MosaiqueFM.this, "Playing", 2000);
t2.show();
}
}
if (isOnline() == false){
Toast t = Toast.makeText(MosaiqueFM.this, "Internet Connection Required", 3000);
t.show();
}
}
});
btnPauseMFM.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (isPlaying() == true) {
mediaPlayer.stop();
} else if (isPlaying() == false){
Toast t = Toast.makeText(MosaiqueFM.this, "Not Playing", 2000);
t.show();
}
}
});
public boolean isPlaying() {
return(mediaPlayer != null && mediaPlayer.isPlaying());
}
public boolean isOnline() {
cm = (ConnectivityManager) getSystemService(this.CONNECTIVITY_SERVICE);
return cm.getActiveNetworkInfo() != null && cm.getActiveNetworkInfo().isConnectedOrConnecting();
}
Hallo, ich habe Ihre Frage bearbeitet, um sie lesbarer zu machen, und mir ist aufgefallen, dass Sie möglicherweise einen Fehler haben. Sie schließen den 'btnPlayMFM.setOnClickListener (' bevor Sie 'btnPauseMFM.setOnClickListener' abschließen, so dass Sie den Listener für die Pause-Schaltfläche in dem Bereich festlegen, in dem Sie den Listener für die Wiedergabe-Schaltfläche festgelegt haben. –
Bitte lesen Sie auch [this Anleitung] (https://stackoverflow.com/help/how-to-ask) auf, wie man eine gute Frage stellt, wie es einige der notwendigen Details durchgehen wird, um eine Frage eine gute Frage zu stellen. Etwas, das ich bemerkte, war das Titel Ihrer Frage Es sieht so aus, als ob Ihr Titel Ihre Frage nicht erklärt, sondern erklärt, warum Sie Ihre Frage gepostet haben Stellen Sie sicher, dass Ihre Titel so detailliert wie möglich zu Ihrer spezifischen Frage oder Ihrem Problem sind. –