0
我一直在尋找的代碼與聲音(刷卡)畫廊則這是最後我做到了。當我打開活動時,第一張照片播放它的聲音,但當我刷下一張照片時,它不會。畫廊刷卡用聲音
public class alphagal extends Activity {
MediaPlayer mp;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.numgal);
ViewPager viewPager = (ViewPager) findViewById(R.id.pager);
ImagePagerAdapter adapter = new ImagePagerAdapter();
viewPager.setAdapter(adapter);
}
private class ImagePagerAdapter extends PagerAdapter {
private int[] mImages = new int[] {R.drawable.a,R.drawable.bb};
private int[] mAudio = new int[]{R.raw.capture,R.raw.capture2};
@Override
public int getCount() {
return mImages.length;
}
@Override
public boolean isViewFromObject(View view, Object object) {
return view == ((ImageView) object);
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
Context context = alphagal.this;
ImageView imageView = new ImageView(context);
imageView.setScaleType(ImageView.ScaleType.CENTER);
imageView.setImageResource(mImages[position]);
((ViewPager) container).addView(imageView, 0);
if(position>=1){
mp = MediaPlayer.create(alphagal.this, mAudio[position-1]);
mp.start();
}
return imageView;
}
OnPageChangeListener player = new OnPageChangeListener()
{
@Override
public void onPageSelected(int arg0)
{
mp = MediaPlayer.create(alphagal.this, mAudio[arg0]);
mp.start();
}
@Override
public void onPageScrolled(int arg0, float arg1, int arg2)
{
}
@Override
public void onPageScrollStateChanged(int arg0)
{
}
};
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
((ViewPager) container).removeView((ImageView) object);
}
}
}
第2張圖片無法播放聲音。 – 2014-11-26 04:01:23
你檢查兩個文件都是MP3嗎?或嘗試使用一些新文件,因爲我檢查了它正常工作的代碼。 – 2014-11-26 05:09:16