Android MediaPlayer:/res/raw上的音频文件检测为整数

Android MediaPlayer:/res/raw上的音频文件检测为整数,android,audio,android-mediaplayer,media-player,Android,Audio,Android Mediaplayer,Media Player,我想在单击按钮时播放音频文件。但我的代码生成的错误代码是: Cannot resolve method'create(context, int)' 因此,我的音频文件被检测为整数 这是我的片段代码: package com.example.suha.belajarhurufhijaiyah; import android.media.MediaPlayer; import android.os.Bundle; import android.app.Fragment; import andr

我想在单击按钮时播放音频文件。但我的代码生成的错误代码是:

Cannot resolve method'create(context, int)'
因此,我的音频文件被检测为整数

这是我的片段代码:

package com.example.suha.belajarhurufhijaiyah;


import android.media.MediaPlayer;
import android.os.Bundle;
import android.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageButton;


/**
* A simple {@link Fragment} subclass.
*/
public class Hijaiyah extends Fragment implements View.OnClickListener {

ImageButton alif;
View view;

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {

    // Inflate the layout for this fragment
    view = inflater.inflate(R.layout.fragment_hijaiyah, container, false);
    alif = view.findViewById(R.id.alif_sound);

    alif.setOnClickListener(this);
    return view;
}

@Override
public void onClick(View view) {
    switch (view.getId()) {
        case R.id.alif_sound:
            MediaPlayer mp = MediaPlayer.create(this, R.raw.sound_alif);
            mp.start();
    }
}
}
生成错误的
R.raw.sound\u alif

这是我的资源


您试图在片段中创建MediaPlayer使用
getActivity()
getContext()
而不是
this
,因此请使用下面的代码

   @Override
public void onClick(View view) {
    switch (view.getId()) {
        case R.id.alif_sound:
            MediaPlayer mp = MediaPlayer.create(getActivity(), R.raw.sound_alif);
            mp.start();
    }

您试图在片段中创建MediaPlayer使用
getActivity()
getContext()
而不是
,因此请使用下面的代码

   @Override
public void onClick(View view) {
    switch (view.getId()) {
        case R.id.alif_sound:
            MediaPlayer mp = MediaPlayer.create(getActivity(), R.raw.sound_alif);
            mp.start();
    }

R
类中,所有资源都表示为
整数
,这不是您的问题问题问题是
上下文
您传入的
片段
更改为
获取活动
,因此将行更改为:

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

R
类中,所有资源都表示为
整数
,这不是您的问题问题问题是
上下文
您传入的
片段
更改为
获取活动
,因此将行更改为:

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

所有资源都是整数!这没问题!所有资源都是整数!这没问题!