Я делаю приложение для Android, на котором пользователь просматривает разные изображения. Я хочу воспроизвести другой звук на каждом изображении, соответственно. Это мой код выглядитВоспроизведение звука при просмотре изображений
package com.horizontalscrollviewwithpageindicator;
import java.util.HashMap;
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.support.v4.view.ViewPager;
import android.view.Menu;
import android.media.AudioManager;
import android.media.SoundPool;
public class PageIndicatorActivity extends Activity {
private static final Object S1 = null;
private static final Object S2 = null;
private static final Object S3 = null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ViewPagerAdapter adapter = new ViewPagerAdapter(this, imageArra);
ViewPager myPager = (ViewPager) findViewById(R.id.myfivepanelpager);
myPager.setAdapter(adapter);
myPager.setCurrentItem(0);
}
public class OurSoundPlayer{
public static final int S1 = R.raw.ss;
public static final int S2 = R.raw.uu;
public static final int S3 = R.raw.rr;
}
private static SoundPool soundPool;
private static HashMap soundPoolMap;
public static void initSounds(Context context) {
soundPool = new SoundPool(2, AudioManager.STREAM_MUSIC, 100);
soundPoolMap = new HashMap(3);
soundPoolMap.put(S1, soundPool.load(context, R.raw.ss, 1));
soundPoolMap.put(S2, soundPool.load(context, R.raw.uu, 2));
soundPoolMap.put(S3, soundPool.load(context, R.raw.rr, 3));
}
public static void playSound(Context context, int soundID) {
if(soundPool == null || soundPoolMap == null){
initSounds(context);
}
float volume = (float) 1.0;
soundPool.play((Integer) soundPoolMap.get(soundID), volume, volume, 1, 0, 1f);
}
private int imageArra[] = {R.drawable.a, R.drawable.b,
R.drawable.c, R.drawable.d,
R.drawable.e, R.drawable.f,
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
}
Теперь здесь я хочу играть различные звуки в зависимости от изображения, которые находятся в массиве.
вы можете добавить слушателя на страницу просмотра onPageChanged и воспроизвести звук –
фактически я новичок в android. У меня нет лишних знаний об этом, я только начал строить, можете ли вы сказать мне, как это сделать? –
Возможный дубликат [Проведите изображения с небольшим звуком] (http://stackoverflow.com/questions/21014928/swipe-images-with-little-sound) – Nfear