为什么我无法引用我的原始文件夹的资源

时间:2014-05-28 06:10:21

标签: android

我正在尝试引用原始文件夹中的音乐,但有一些错误。有人说explosion cannot be resolved or is not a field。任何人都可以告诉我可能是什么原因。

package com.app1;

import android.R;
import android.app.Activity;
import android.media.AudioManager;
import android.media.SoundPool;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;

public class SoundStuff extends Activity implements OnClickListener {
SoundPool sp;
    int explosion=0;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        View v= new View(this);
        v.setOnClickListener(this);
        setContentView(v);
        sp=new SoundPool(5,AudioManager.STREAM_MUSIC,0);
        **explosion=sp.load(SoundStuff.this, R.raw.explosion, 1);**
    }

    @Override
    public void onClick(View arg0) {
        // TODO Auto-generated method stub
        if(explosion!=0)
        sp.play(explosion, 1, 1, 0, 0, 1);

    }


}

代码在上面给出。显示错误的代码行已经标记。

2 个答案:

答案 0 :(得分:6)

删除import android.R;行。当您使用R.raw.explosion时,表示android.R中的R变量。

确保在使用R变量时,表示包中的变量: enter image description here

答案 1 :(得分:0)

可以添加两种类型的R ..始终添加与您的包相关联的R ..