滚动android-wheel时如何振动手机?

时间:2014-03-22 08:36:33

标签: android android-listview

我想震动移动&当用户滚动android-wheel

时,为每个项目更改播放声音

我在iPhone的默认时间选择器中看到了这一点。当我们在时间选择器中滚动时间时,它会播放滴答声。

有可能吗?如果那是怎么回事?

如果没有正确询问,请编辑问题。

3 个答案:

答案 0 :(得分:1)

试试这个

Step-1 添加AndroidManifest.xml

<uses-permission android:name="android.permission.VIBRATE"/> 
onCreate()方法

中的

步骤2

 Vibrator v = (Vibrator) this.context.getSystemService(Context.VIBRATOR_SERVICE);
MediaPlayer mp = MediaPlayer.create(this, R.raw.your_sound);

步骤2 setOnScrollListener上设置ListView

listView.setOnScrollListener(new OnScrollListener(){
        public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
            // TODO Auto-generated method stub
                            // Vibrate for 500 milliseconds
                 v.vibrate(500);
                           mp.start();
                 Log.i("a", "scrolling...");
        }
        public void onScrollStateChanged(AbsListView view, int scrollState) {
            // TODO Auto-generated method stub              
                Log.i("a", "scrolling stoped...");                  

        }
    });

希望这会对你有所帮助。

答案 1 :(得分:0)

试试这个:

import android.os.Vibrator;




ListView lv = (ListView)findViewById(R.id.list_view);
        lv.setOnScrollListener(new OnScrollListener() {
            @Override
            public void onScrollStateChanged(AbsListView view, int scrollState) {
Vibrator v = (Vibrator) this.context.getSystemService(Context.VIBRATOR_SERVICE);
                    // Vibrate for 500 milliseconds
                    v.vibrate(500);}
        });

不要忘记在AndroidManifest.xml文件中包含权限:

<uses-permission android:name="android.permission.VIBRATE"/>

答案 2 :(得分:0)

我知道现在回答太晚了,但可能会对其他人有所帮助。

您需要做的是在Adapter类的 onBindViewHolder 中添加以下代码。

 Vibrator v = (Vibrator) holder.itemView.getContext().getSystemService(Context.VIBRATOR_SERVICE);
    // Vibrate for 20 milliseconds
    v.vibrate(20);

每次使用recyclerView绑定项目时,这将使您的设备振动。