gpt4 book ai didi

android - 如何在 viewpager 滑动时播放声音

转载 作者:行者123 更新时间:2023-11-29 02:38:55 24 4
gpt4 key购买 nike

我创建了一个简单的 android 项目,它将显示各种图像,但问题是我无法弄清楚如何通过滑动为每个图像添加声音。我为我的项目制作了一个单独的寻呼机适配器类。

viewpagerAdapter.java

import android.app.Activity;
import android.content.Context;
import android.media.MediaPlayer;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.util.DisplayMetrics;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.LinearLayout;

public class ViewPagerAdapter extends PagerAdapter {
MediaPlayer mp;
Activity activity;
int[] images;
int[] audio;
LayoutInflater inflater;

public ViewPagerAdapter(Activity activity, int[] images,int[] audio){
this.activity=activity;
this.images=images;
this.audio=audio;
}

@Override
public int getCount() {
return images.length;
}

@Override
public boolean isViewFromObject(View view, Object object) {
return view==object;
}

@Override
public Object instantiateItem(ViewGroup container, final int position) {
inflater=

(LayoutInflater)activity.getApplicationContext().
getSystemService(Context.LAYOUT_INFLATER_SERVICE);
final View itemView =
inflater.inflate(R.layout.pager_list,container,false);

final ImageView image;
image = (ImageView)itemView.findViewById(R.id.image_view);
image.setImageResource(images [position]);
image.setScaleType(ImageView.ScaleType.FIT_XY);
container.addView(itemView);
return itemView;
}

@Override
public void destroyItem(ViewGroup container, int position, Object object) {
container.removeView((View)object);
}
}

这是我的 Activity 课

    import android.media.MediaPlayer;
import android.support.v4.view.ViewPager;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.WindowManager;

public class Alphabet extends AppCompatActivity {
MediaPlayer mp;

ViewPager viewPager;
ViewPagerAdapter adapter;
public int[] images = {R.drawable.a, R.drawable.b, R.drawable.c,
R.drawable.d, R.drawable.e, R.drawable.f, R.drawable.g,
R.drawable.h, R.drawable.i, R.drawable.j, R.drawable.k,
R.drawable.l, R.drawable.m, R.drawable.n, R.drawable.o,
R.drawable.p, R.drawable.q, R.drawable.r, R.drawable.s,
R.drawable.t, R.drawable.u, R.drawable.v, R.drawable.w,
R.drawable.x, R.drawable.y, R.drawable.z};
public int[] audio = {R.raw.a, R.raw.b, R.raw.c, R.raw.d};

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.swipe);

viewPager = (ViewPager) findViewById(R.id.view_pager);
adapter = new ViewPagerAdapter(this, images, audio);

viewPager.setAdapter(adapter);

}
}

我应该修改哪一部分

最佳答案

您可以使用 ViewPager.OnPageChangeListener 来监听滑动事件和播放音频。

https://developer.android.com/reference/android/support/v4/view/ViewPager.OnPageChangeListener.html

关于android - 如何在 viewpager 滑动时播放声音,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45521917/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com