前言:
Vibrator个人资料:
写个简单的例子,熟悉一下这个Vibrator的使用方法吧!
获取Vibrator实例:
vibratorVB=(vibrator ) getsystemservice ) service.vibrator_service;
2 .可用的相关方法:
1.stract void cancel () :关闭或停止振动器
2 .跟踪布尔has vibrator () :确定硬件中是否有振动器
3.idvibrate(longmilliseconds ) :手机振动控制在milliseconds毫秒
4.idvibrate(long[]pattern,int repeat ) :指定手机在pattern指定模式下振动! 例如,pattern是new int [ 200、400、600、800 ],在200、400、600、800的时间内交替启动和停止振动器。 第二个是重复次数。 -1的情况下只有一次,0的情况下一直振动有其他两种方法。 是的。 要使用振动器,必须在AndroidManifest.xml中添加以下权限:
3 .使用实例:设置频率不同的PC :
在Vibrator中使用最广泛的莫过于所谓的便携式按摩机那样的APP了。 搜索APP市场,发现有很多APP,笔者随便下来看了几个,都差不多。 这个小东西居然有8W以上的下载量……算了,虽然看起来不是很多,但普遍的功能是切换振动频率完成的,按摩效果,真的不知道有效,其实vibrate 下列代码需要在实际机器上进行测试!
运行效果图:
实现代码:
简单的布局文件,五个按钮: activity_main.xml :
Android : layout _ width=' match _ parent '
Android : layout _ height=' match _ parent '
Android : orientation=' vertical '
Android : id=' @ id/BTN _ has vibrator '
安卓: layout _ width=' wrap _ content '
Android : layout _ height=' wrap _ content '
android:text='判断有无振动器' /
android:id='@ id/btn_short '
安卓: layout _ width=' wrap _ content '
Android : layout _ height=' wrap _ content '
android:text='短振动' /
android:id='@ id/btn_long '
安卓: layout _ width=' wrap _ content '
Android : layout _ height=' wrap _ content '
android:text='长振动' /
android:id='@ id/btn_rhythm '
安卓: layout _ width=' wrap _ content '
Android : layout _ height=' wrap _ content '
android:text='节奏振动' /
android:id='@ id/btn_cancle '
安卓: layout _ width=' wrap _ content '
Android : layout _ height=' wrap _ content '
Android :文本='消除振动' /
紧接MainActivity.java部分。
publicclassmainactivityextendsappcompatactivityimplementsview.onclick监听器{
隐私按钮BTN _ has vibrator;
私密button BTN _ short;
私密button BTN _ long;
private Button btn_rhythm;
私密button BTN _ cancle;
私有虚拟机管理器;
隐私上下文m上下文;
@Override
protectedvoidoncreate (边界维护实例state )。
super.oncreate (savedinstancestate;
setcontentview (r.layout.activity _ main;
//获取系统的Vibrator实例:
myvibrator=(vibrator ) getsystemservice ) service.vibrator_service;
mContext=MainActivity.this;
绑定视图(;
}
私有语音绑定视图(
btn_hasVibrator=(Button ) findviewbyid (r.id.BTN _ has vibrator );
BTN_short=(Button ) findviewbyid(r.id.BTN_short );
BTN_long=(Button ) findviewbyid(r.id.BTN_long );
BTN_rhythm=(Button ) findviewbyid(r.id.BTN_rhythm );
BTN_cancle=(Button ) findviewbyid(r.id.BTN_cancle );
BTN _ has vibrator.setonclicklistener (this );
BTN _ short.setonclicklistener (this;
BTN _ long.setonclicklistener (this;
BTN _ rhythm.setonclicklistener (this;
BTN _ cancle.setonclicklistener (this;
}
@Override
公共语音在线(查看) {
sitch(v.getid ) ) ) ) )。
case R.id.btn_hasVibrator:
toast.maketext(mcontext,myVibrator.hasVibrator )? 如果“现行设备中没有振动器”:“现行设备中没有振动器”,
toast.Length_short(.show );
布雷克;
case R.id.btn_short:
myVibrator.cancel (;
my vibrator.vibrate (newlong [ ] { 100,200,100,200 },0 );
toast.maketext(mcontext,'短振动',Toast.LENGTH_SHORT ).show );
布雷克;
case R.id.btn_long:
myVibrator.cancel (;
my vibrator.vibrate (newlong [ ] { 100,100,1000 },0 );
toast.maketext(mcontext,'长振动',Toast.LENGTH_SHORT ).show );
布雷克;
case R.id.btn_rhythm:
myVibrator.cancel (;
my vibrator.vibrate (newlong [ ] { 500,100,500,100 },0 );
toast.maketext(mcontext,'节奏振动',Toast.LENGTH_SHORT ).show );
布雷克;
case R.id.btn_cancle:
myVibrator.cancel (;
toast.maketext(mcontext,'取消振动',Toast.LENGTH_SHORT ).show );
}
}
}
对了,不要错过振动器权限哦!
总结:
那么,本文学习了振动器的基本使用。 代码很简单。 我还不会马上参加你的APP,把你的APP设为HI