Android开发之手机震动器
来源:互联网 发布:计算机java等级考试 编辑:程序博客网 时间:2024/04/28 05:46
Android中用Vibrator类的对象来控制震动器。
要获得设备的震动器,要调用getSystemService(String)函数,以
VIBRATOR_SERVICE
为参数。
Vibrator类有以下成员函数:
Turn the vibrator off.
Check whether the hardware has a vibrator.
Vibrate with a given pattern.
Vibrate constantly for the specified period of time.
调用vibrate方法来产生震动,根据传递的参数不同,有两种震动方式。如果只传递一个long参数,这个参数用来指定振动的毫秒数,如要震动5秒,则按如下方式调用:
vibrator.vibrate(5000);
如果传递多个参数,震动器就按照给定的模式震动,震动模式由数组pattern指定。如要按以下方式震动:
等待1秒,震动2秒,等待1秒,震动3秒,则把数组设置如下:
long[] pattern = {1000, 2000, 1000, 3000};
第二个参数为-1表示不重复, 如果不是-1, 比如改成1, 表示从前面这个long数组的下标为1的元素开始重复(这个说法应该靠谱,而不是重复的次数,因为当用这个数组的时候传4过去,会出现下图情况)
完整的代码如下:
package com.peng.hello.activity;import android.app.Activity;import android.app.Service;import android.os.Bundle;import android.view.View;import android.widget.TextView;import android.widget.Toast;import android.os.Bundle;import android.os.Vibrator;import android.view.View;import android.widget.TextView;public class HelloActivity extends Activity { Vibrator vibrator; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); vibrator = (Vibrator)getApplication().getSystemService(Service.VIBRATOR_SERVICE); } public void onMyClick(View view) { long[] pattern = {800, 50, 400, 30}; // OFF/ON/OFF/ON... vibrator.vibrate(pattern, 4); Toast.makeText(this, "button click", Toast.LENGTH_SHORT).show();// vibrator.cancel(); }}以上程序要添加一个按钮,onMyClick为按钮的响应程序。在mail.xml中添加如下程序:
<Button android:id="@+id/Btm01" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" android:onClick="onMyClick"></Button>
记得在AndroidManifest.xml文件添加权限,如下:
<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.peng.hello.activity" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="8" /> <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" > <activity android:name=".HelloActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> <uses-permission android:name="android.permission.VIBRATE" /> </manifest>注,以上程序红色部分为添加进去的。
还有程序要在真机上运行才能有震动的效果,模拟器上不支持震动的。
- Android开发之手机震动器
- android之手机震动
- android之手机震动Vibrate
- Android开发教程:手机震动控制浅析
- Android开发教程:手机震动控制浅析
- Android学习之震动你的手机
- Android之手机震动效果实现
- android 之实现手机震动功能
- android 学习 手机震动
- Android 手机震动
- Android 调用手机震动
- Android 手机震动节奏
- android--手机震动--Vibrator
- Android 手机震动控制
- Android学习 - 手机震动
- Android手机震动控制
- Android 手机震动调用
- 手机震动android代码
- 提交按钮变灰色不可用状态
- getenv putenv setenv和unsetenv详解
- Oracle Instant Client安装使用
- 浙江2008年高招文理科第一批平行投档分数线
- 关于青春
- Android开发之手机震动器
- JMeter“监视器结果”配置(监视器结果无数据的解决方法)
- js根据输入内容自动填充下拉框
- 20121010,微软10月10日发布7个安全补丁
- 2008年浙江省普通高校文理科第二批平行投档分数线
- ubuntu下查看安装opencv的lib文件, .so .a 与dll lib的 对应关系
- 精确掌握未满三岁前的“拿手菜”
- IOS应用本地化小结
- 使用TinyXml库值得注意的几个地方