Рекомендованный способ сделать это - использовать события, как показано в приведенном ниже коде.
mediaPlayer.Completion += MediaPlayer_Completion;
...
}
private void MediaPlayer_Completion(object sender, EventArgs e)
{
Android.Util.Log.Info("Completion Listener", "Song Complete");
Toast.MakeText(context, "Media Completed", ToastLength.Short).Show();
}
Если вам все еще не хватает Java в C # и вы боитесь событий, вы можете сделать следующее:
C # не поддерживает анонимные интерфейсы.Вам нужно создать отдельный класс, который реализует IOnCompletionListener.например, это может быть ActivityClass:
public class MyActivity: Activity, IOnCompletionListener
{
public void OnCompletion(Android.Media.MediaPlayer mp)
{
Android.Util.Log.Info("Completion Listener", "Song Complete");
Toast.MakeText(this, "Media Completed", ToastLength.Short).Show();
}
...
{
...
mediaPlayer.SetOnCompletionListener(this);
...
}
}
или какой-то другой класс, который наследуется от Java.Lang.Object и реализует IOnCompletionListener.
, если вы находитесь в Activity, замените 'context' на 'this«