Android Vibrator的使用

Android手机中的震动由Vibrator实现。设置震动事件,需要知道其震动的时间长短、震动的周期等。

在Android Vibrator中,震动的时间一毫秒计算(1/1000秒),所以如果设置的时间值太小,会感觉不出来。

通过调用Vibrator的vibrate(long[] pattern, int repeat)方法实现。

前一个参数为设置震动的效果的数组,第二个参数为 -1表示只震动一次,为0则震动会一直持续。

一个demo:

package com.shao.vibrator;

import android.app.Activity;

import android.os.Bundle;

import android.os.Vibrator;

import android.widget.CompoundButton;

import android.widget.Toast;

import android.widget.CompoundButton.OnCheckedChangeListener;

import android.widget.ToggleButton;

public class VibratorActivity extends Activity {

private Vibrator vibrator;

private ToggleButton tog1;

private ToggleButton tog2;

private ToggleButton tog3;

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

init();

tog1.setOnCheckedChangeListener(new OnCheckedChangeListener() {

@Override

public void onCheckedChanged(CompoundButton buttonView,

boolean isChecked) {

// TODO Auto-generated method stub

if (isChecked) {

// 设置震动周期

vibrator.vibrate(new long[] { 1000, 10, 100, 1000 }, -1);

showToast("OK");

} else {

// 取消震动

vibrator.cancel();

showToast("CANCEL");

}

}

});

tog2.setOnCheckedChangeListener(new OnCheckedChangeListener() {

@Override

public void onCheckedChanged(CompoundButton buttonView,

boolean isChecked) {

// TODO Auto-generated method stub

if (isChecked) {

// 设置震动周期

vibrator.vibrate(new long[] { 100, 100, 100, 1000 }, 0);

showToast("OK");

} else {

// 取消震动

vibrator.cancel();

showToast("CANCEL");

}

}

});

tog3.setOnCheckedChangeListener(new OnCheckedChangeListener() {

@Override

public void onCheckedChanged(CompoundButton buttonView,

boolean isChecked) {

// TODO Auto-generated method stub

if (isChecked) {

// 设置震动周期

vibrator.vibrate(new long[] { 1000, 50, 1000, 50, 1000 }, 0);

showToast("OK");

} else {

// 取消震动

vibrator.cancel();

showToast("CANCEL");

}

}

});

}

private void init() {

tog1 = (ToggleButton) findViewById(R.id.tog1);

tog2 = (ToggleButton) findViewById(R.id.tog2);

tog3 = (ToggleButton) findViewById(R.id.tog3);

vibrator = (Vibrator) this.getSystemService(VIBRATOR_SERVICE);

}

private void showToast(String msg) {

Toast.makeText(this, msg, 1).show();

}

}

xml:

最后别忘了加上<uses-permission  android:name="android.permission.VIBRATE"/>权限。

时间: 2024-11-08 11:58:03

Android Vibrator的使用的相关文章

Android -- Vibrator

Vibrator                                                                                    public class MainActivity extends Activity { private Vibrator vibrator; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedIns

Android Vibrator 震动 消息通知

过年比较忙,家里也没网,懒惰了好几天,终于又要开始了.每天都有事,所以就写点简单的.我们平常在用QQ或者微信的时候,经常会把手机调成震动模式,这个时候如果有新消息的话,就会听到手机震动,但是我们也会发现,每种应用程序的震动的时间和周期不一样,那么我们就来看看怎么样来控制手机的震动. 手机震动属于硬件控制,所以要import两个包,一个是提供用于震动的服务android.app.Service,一个是用来管理震动的包android.os.Vibrator.重点就在这个Vibrator.那么我们打开

android Vibrator 使用

private Vibrator vibrator; 取得震动服务的句柄 vibrator = (Vibrator) getSystemService(VIBRATOR_SERVICE); 或者 vibrator = (Vibrator)getApplication().getSystemService(Service.VIBRATOR_SERVICE); 开始震动有两个接口 1 .   vibrator.vibrate(2000);//震动指定时间 ,数据类型long,单位为毫秒,一毫秒为1/

Android Vibrator震动效果

android震动器:Vibrator Android手机中的震动由Vibrator实现. Vibrator vibrator = (Vibrator) getSystemService(VIBRATOR_SERVICE); vibrator.vibrate(time);//定义事件震动长短.time为时间,long型,毫秒,这里需要定义一个震动的时间长短 vibrator.vibrate(new long[]{100,100,100,100}, -1);//按照指定的模式去震动.这里的-1是指

android Vibrator 使用方法

private Vibrator mvibrator; 1.获取震动服务的句柄 mvibrator = (Vibrator) getSystemService(VIBRATOR_SERVICE); 或者 mvibrator = (Vibrator)getApplication().getSystemService(Service.VIBRATOR_SERVICE); 开始震动有两个接口 1 .   mvibrator.vibrate(2000);//震动指定时间 ,数据类型long,单位为毫秒,

Andorid手机振动器(Vibrator)的使用

标签: android vibrator 震动器 it 分类: Andorid 获取振动器Vibrator实例: Vibrator  mVibrator = (Vibrator) context.getSystemService(Context.VIBRATOR_SERVICE); Vibrator.vibrate()方法: 只有1个参数的时候,第一个参数用来指定振动的毫秒数. 要传递2个参数的时候,第1个参数用来指定振动时间的样本,第2个参数用来指定是否需要循环. 振动时间的样本是指振动时间和

delphi 手机振动 IOS Android

delphi  手机振动 IOS Android https://community.embarcadero.com/blogs/entry/how-to-vibrate-ios-and-android-phones-using-firemonkey-and-xe8 http://blogs.embarcadero.com/davidi/2015/07/06/43894/ unit Umain; interface uses System.SysUtils, System.Types, Syst

在用Kivy开发Python手机游戏时通过Plyer扩展访问Android传感器

这是一篇发表在kivyspacegame上的文章,讲的是如何使用python在你的安卓设备上访问传感器.这篇教程是为这些用kivy开发python移动apps而写的.Kivy运行速度非常快,并且很容易使用.访问博客以获取更多的关于用Kivy开发游戏的教程.也可以看看google play store上的Helios: Mining Adventure游戏程序. 这篇教程将关注plyer,一个可以读取传感器,发送email,以及将文本转成语音,显示通知等等功能的库.如果你正在用python开发移动

Android基础入门教程——10.4 Vibrator(振动器)

Android基础入门教程--10.4 Vibrator(振动器) 标签(空格分隔): Android基础入门教程 本节引言: 本节我们介绍的是Vibrator(振动器),是手机自带的振动器,别去百度直接搜针振动器,因为 你的搜索结果可能是如图所示的神秘的道具,或者其他神秘道具: 嗯,说回本节介绍的Vibrator,其实就是Android给我们提供的用于机身震动的一个服务! 比如前面我们的Notification中可以设置震动,当收到推送消息的时候我们可以设置震动 提醒,游戏必备,比如"打飞机&