我对android eclipse相当陌生,而且我正在创建一个应用程序时遇到一些小问题。基本上我想要有6个图像,一旦你点击一个图像,一组声音就会播放。我遇到的问题是无论点击哪个图像,都会发生相同的声音。以下是我的代码活动,任何帮助将不胜感激。我曾尝试让声音池工作,但我还没有找到一个很好的例子来遵循,并没有得到它的工作。多个图像多个声音问题android eclipse
package org.example.tuner;
import android.app.Activity;
import android.os.Bundle;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;
import android.widget.ImageView;
import android.widget.RelativeLayout;
import android.widget.TextView;
import android.R.raw;
import android.media.AudioManager;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.KeyEvent;
public class GuitarTunerActivity extends Activity implements OnTouchListener {
private MediaPlayer mp;
ImageView estring, astring;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
setVolumeControlStream(AudioManager.STREAM_MUSIC);
estring = (ImageView) findViewById(R.id.estring);
estring.setOnTouchListener(this);
astring = (ImageView) findViewById(R.id.astring);
astring.setOnTouchListener(this);
}
public boolean onTouch(View v, MotionEvent event) {
int resId;
estring = (ImageView) findViewById(R.id.estring);
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
resId = R.raw.e;
System.out.println("Image is Touched");
break;
default:
return super.onTouchEvent(event);
}
if (mp != null) {
mp.release();
}
mp = MediaPlayer.create(this, resId);
mp.start();
return true;
}
public boolean onTouch1(View v, MotionEvent event) {
int resId;
astring = (ImageView) findViewById(R.id.astring);
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
resId = R.raw.a;
System.out.println("Image is Touched");
break;
default:
return super.onTouchEvent(event);
}
if (mp != null) {
mp.release();
}
mp = MediaPlayer.create(this, resId);
mp.start();
return true;
}
}
请帮我解决这个问题。
谢谢我现在对我有用,真的很感激:D – chickenchaser 2012-01-18 16:56:51