Я делаю приложение с аудиофайлами и фотографиями. (Словарь словарь) Я хочу воспроизвести звук "A" для фотографии "A". Звук воспроизводится при нажатии кнопки (для простоты). Приложение работает плавно, НО звук не воспроизводится при нажатии кнопки (30-40 нажатий). Я делюсь своим разделом кода.
...
public MediaPlayer mp;
public Context con;
public LayoutInflater lf;
//Sounds and photos
public Integer[] audios = {
R.raw.a,
R.raw.b,
R.raw.c,
R.raw.d };
public Integer[] cards = {
R.drawable.a,
R.drawable.b,
R.drawable.c,
R.drawable.d };
public Object instantiateItem(@NonNull ViewGroup container, final int position) {
lf = (LayoutInflater) con.getSystemService(con.LAYOUT_INFLATER_SERVICE);
View view = lf.inflate(R.layout.slide_layout,container,false);
ImageView imageView = (ImageView) view.findViewById(R.id.imageView);
ImageButton btn;
btn=(ImageButton) view.findViewById(R.id.imageButton);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
mp = MediaPlayer.create(con,audios[position]);
mp.start();
}
});
imageView.setImageResource(cards[position]);
ViewPager vp = (ViewPager) container;
vp.addView(view,0);
return view;
}
...