android - 在 fragment 中使用 Mediaplayer

标签 android android-fragments

我仍在尝试了解 fragment 以及它们是如何工作的。我有一个扩展布局的 fragment 。我试图在按下按钮时播放声音,但我遇到了媒体播放器的一些问题。

代码是:

private void playSound(int resId) {
    MediaPlayer mp = MediaPlayer.create(Tab1Fragment.this, resId);
    mp.setOnCompletionListener(Tab1Fragment.this);
    mp.start();
}

错误是:The method create(Context, int) in the type MediaPlayer is not applicable for the arguments (Tab1Fragment, int)
我尝试使用 getApplicationContext()无济于事。

任何帮助表示赞赏
谢谢

最佳答案

在 fragment 类的 onCreateView 方法中使用此代码,它将正常工作。

mp = MediaPlayer.create(getActivity, R.raw.songname);

现在您可以在按钮单击监听器上调用它的 start 方法。
确保将 MediaPlayer mp; fragment 类的全局,以便您以后可以使用它。

关于android - 在 fragment 中使用 Mediaplayer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13073471/

相关文章:

android - 如何使用 ionic 3 中的特定联系人从其他应用程序打开 Whatsapp 应用程序?

android - fragment 作为 Android 中的单例

java - 如何进行深色模式设置

android - opengl 动画崩溃

android: videoview 历史记录/书签

Android ExifInterface 不保存属性

java - Android:比较 ImageButton 和资源中的图像

android - 强制用户在对话框中选择选项

android - 如何从其实现类中获取接口(interface)?

java - 在某些 Android 案例中,早期初始化会出错吗?