【发布时间】:2013-10-09 12:54:44
【问题描述】:
我正在用 Android 开发一个简单的游戏。我想为每个触摸添加声音效果 事件。但是我添加了贯穿整个游戏的背景音效。但 如何为触摸游戏的任何角色添加微小的声音效果。为了更好地理解 以下是我的课堂设计: 我有一个主要活动,作为视图,我正在调用我的 GameView 类,该类扩展 表面视图。对于免费的声音,我刚刚在 mainActivity 创建了声音,然后调用了 GameView 类如下:
public class MainActivity extends Activity {
MediaPlayer backgroundMusic;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
backgroundMusic = MediaPlayer.create(MainActivity.this, R.raw.bg);
backgroundMusic.setLooping(true);
backgroundMusic.setVolume(10.0f, 3.0f);
backgroundMusic.start();
setContentView(new GameView(this));
}
}
以下是我的 GameView 课程。我想在此类 onTouchEvent 中添加音效,如下所示:
public class GameView extends SurfaceView {
@Override
public boolean onTouchEvent(MotionEvent event) {
//checking condition I want to give different sound here.
}
}
我尝试将其作为 mainActivity 执行(即使用 MediaPlayer.creat() ),但它显示错误。 有人知道如何根据我的班级设计添加这样的音效吗?
【问题讨论】:
-
“显示错误”。什么是错误..?
-
显示的错误不是运行时。只是我的编译器说如下:“MediaPlayer 类型中的方法 create(Context, int) 不适用于参数 (GameView, int)” 这可能是因为 GameView 不是 Activity 类。但是我不知道为什么... @Michael