- 浏览: 650104 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (142)
- Android (38)
- hibernate (12)
- java基础 (18)
- spring (5)
- struts1.x (8)
- struts2.x (7)
- web开发 (11)
- tomact (1)
- jbpm3.2 (2)
- jpa (2)
- strutstest (1)
- js (3)
- WebWork (2)
- 数据库 (5)
- mysql (6)
- myeclipse和eclipse (8)
- java与办公 (2)
- linux (10)
- 性能调优 (2)
- 搜索引擎 (1)
- urlrewritefilter (1)
- Git (3)
- Dos (1)
- Chrome (1)
- PLMN (1)
最新评论
-
3xxx:
你这个靠谱。谢谢。
git push用法和常见问题分析 -
lord_is_layuping:
mark
git push用法和常见问题分析 -
calatustela:
@Resource是名字优先注入,可以用来注入Map之类的常量 ...
spring 注解@Resource 和 @Autowired -
Mr.Cheney:
repo sync 下载耗时太久了, 有没有国内的站可下编译环 ...
使用repo下载google 的android4.4 源码,和编译.运行 -
北极光之吻:
kslinabc 写道请问楼主,4.4下载下来有多大,为啥我这 ...
使用repo下载google 的android4.4 源码,和编译.运行
Vibrator对象及周期运用
提到了与手机的交互控制,就不能不提到手机震动事件。手机的震动,可以是一种提醒或替换铃声的事件,所以在这个范例中,将学到如何触发手机震动事件,虽然震动是手机默认的模式,但通过程序的辅助,可以做更精密的控制,诸如震动周期、持续时间等。
设置震动(Vibration)事件中,必须要知道命令其震动的时间长短、震动事件的周期等,而在Android里设置的数值,皆是以毫秒(1000毫秒=1秒)来做计算,所以在做设置时,必须要注意一下,如果设置的时间值太小的话,会感觉不出来。
要让手机乖乖的震动,需创建Vibrator对象,通过调用vibrate方法来达到震动的目的,在Vibrator的构造器中有4个参数,前3个的值是设置震动的大小,在这边可以把数值改成一大一小,这样就可以明显感觉出震动的差异,而最后一个值是设置震动的时间。
以下的范例设置每个震动的模式都不一样,当repeat = 0时,震动会一直持续,若repeat = ?1时,震动只会出现一轮,运行完毕后就不会再有动作。
主程序中,判断ToggleButton是否有被启动,如果单击"ON"的话,就会启动震动模式,并会跳出Toast文字;如果再一次单击"OFF",就会把震动关掉。
import android.app.Service; import android.os.Vibrator; public class EX05_06 extends Activity { private Vibrator mVibrator01; /* * Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); /*设置ToggleButton的对象*/ mVibrator01 = ( Vibrator )getApplication().getSystemService (Service.VIBRATOR_SERVICE); final ToggleButton mtogglebutton1 = (ToggleButton) findViewById(R.id.myTogglebutton1); final ToggleButton mtogglebutton2 = (ToggleButton) findViewById(R.id.myTogglebutton2); final ToggleButton mtogglebutton3 = (ToggleButton) findViewById(R.id.myTogglebutton3); /* 短震动 */ mtogglebutton1.setOnClickListener(new OnClickListener() { public void onClick(View v) { if (mtogglebutton1.isChecked()) { /* 设置震动的周期 */ mVibrator01.vibrate( new long[]{100,10,100,1000},-1); /*用Toast显示震动启动*/ Toast.makeText ( EX05_06.this, getString(R.string.str_ok), Toast.LENGTH_SHORT ).show(); } else { /* 取消震动 */ mVibrator01.cancel(); /*用Toast显示震动已被取消*/ Toast.makeText ( EX05_06.this, getString(R.string.str_end), Toast.LENGTH_SHORT ).show(); } } }); /* 长震动 */ mtogglebutton2.setOnClickListener(new OnClickListener() { public void onClick(View v) { if (mtogglebutton2.isChecked()) { /*设置震动的周期*/ mVibrator01.vibrate(new long[]{100,100,100,1000},0); /*用Toast显示震动启动*/ Toast.makeText ( EX05_06.this, getString(R.string.str_ok), Toast.LENGTH_SHORT ).show(); } else { /* 取消震动 */ mVibrator01.cancel(); /* 用Toast显示震动取消 */ Toast.makeText ( EX05_06.this, getString(R.string.str_end), Toast.LENGTH_SHORT ).show(); } } }); /* 节奏震动 */ mtogglebutton3.setOnClickListener(new OnClickListener() { public void onClick(View v) { if (mtogglebutton3.isChecked()) { /* 设置震动的周期 */ mVibrator01.vibrate( new long[]{1000,50,1000,50,1000},0); /*用Toast显示震动启动*/ Toast.makeText ( EX05_06.this, getString(R.string.str_ok), Toast.LENGTH_SHORT ).show(); } else { /* 取消震动 */ mVibrator01.cancel(); /* 用Toast显示震动取消 */ Toast.makeText ( EX05_06.this, getString(R.string.str_end), Toast.LENGTH_SHORT ).show(); } } }); } }
Vibrator对象及周期运用
提到了与手机的交互控制,就不能不提到手机震动事件。手机的震动,可以是一种提醒或替换铃声的事件,所以在这个范例中,将学到如何触发手机震动事件,虽然震动是手机默认的模式,但通过程序的辅助,可以做更精密的控制,诸如震动周期、持续时间等。
设置震动(Vibration)事件中,必须要知道命令其震动的时间长短、震动事件的周期等,而在Android里设置的数值,皆是以毫秒(1000毫秒=1秒)来做计算,所以在做设置时,必须要注意一下,如果设置的时间值太小的话,会感觉不出来。
要让手机乖乖的震动,需创建Vibrator对象,通过调用vibrate方法来达到震动的目的,在Vibrator的构造器中有4个参数,前3个的值是设置震动的大小,在这边可以把数值改成一大一小,这样就可以明显感觉出震动的差异,而最后一个值是设置震动的时间。
以下的范例设置每个震动的模式都不一样,当repeat = 0时,震动会一直持续,若repeat = ?1时,震动只会出现一轮,运行完毕后就不会再有动作。
主程序中,判断ToggleButton是否有被启动,如果单击"ON"的话,就会启动震动模式,并会跳出Toast文字;如果再一次单击"OFF",就会把震动关掉。
AndroidManifest.xml
震动事件必须允许android.permission.VIBRATE权限。
<uses-permission android:name="android.permission.VIBRATE" /> |
震动事件的控制,虽是通过震动时间周期来表现出差异,但在实际设计上,可以设计如接收到短信、单击按钮的瞬间来达到简短震动提示。笔者也常在一些Android开发的游戏中应用震动的事件,如"球入迷宫"的游戏,当球碰到墙壁时,就可以震动手机。
试着把震动的大小做多变化的改变,在long[]里面可以多做一些变化,上面的程序对参数的用法作了示范,而以下的震动效果,就交给读者自己试试看了!
mVibrator01.vibrate ( new long[]{10000,500,10000,500,10000,500,10000},0 ); |
如果想隐藏,那么只需要加上finish()
发表评论
-
如何实现Android 布局背景模糊化处理
2015-03-25 10:09 20825在模仿 IOS 密码输入页面的时候发现其背景有模糊处理,于是 ... -
Android中内容观察者的使用---- ContentObserver类详解 (转)
2014-10-27 15:27 1452http://www.cnblogs.com/slider ... -
监听未接来电
2014-10-27 14:41 2899这里主要是总结一下如何监听有未接来电的问题 1.1 ... -
Android 4.4 Settings 应用初步分析
2014-10-17 17:19 8287一次偶然要在设置里面增加一个菜单,需要修改到sett ... -
Android 使用 AndroidTestCase 的步骤
2014-10-17 15:23 2500Android 使用 AndroidTestCase 的步骤 ... -
property_get/property_set
2014-08-12 16:37 2249每个属性都有一个名称和值,他们都是字符串格式。属性被大量使 ... -
Android设置RadioButton在文字的右边
2014-03-11 09:52 2806<?xml version=&quo ... -
android 常见错误
2014-03-11 09:10 1073问题1:android.view.WindowM ... -
android 4.3之后使用ccache提供编译速度
2014-03-06 21:32 10127ccache(“compiler cache”的缩写)是一个 ... -
修改vid 导致adb 找不到手机
2014-03-05 21:51 1231修改vid 导致adb 找不到手机 linux下面的方法 ... -
android adb配置
2014-02-23 19:39 844linux ubuntu12 1. 配置环境变量 sud ... -
Android 类似未读短信图标显示数字效果的分析
2014-01-07 13:36 13422之前一直以为是 ... -
Android 中dp 和px 转换及原理分析
2014-01-07 12:15 5091具体的转换方法如下,网上都是有的,但是自己看了之后感觉 ... -
eclispe 更新sdk Connection to https://dl-ssl.google.com refused
2013-12-26 14:46 4770解决办法是:将https://修改为http://修改方法 ... -
使用repo下载google 的android4.4 源码,和编译.运行
2013-12-20 14:44 70779使用repo下载google 的android4.4 源码 ... -
Android中gravity与layout_gravity的区别, Padding 与 margin 区别
2013-12-03 09:03 1686原文: http://hi.baidu.com/doyee ... -
android ViewFlipper的使用
2013-10-10 09:36 2547http://blog.sina.com.cn/s/blo ... -
Android 中 PopupWindow 响应返回键并关闭的问题
2013-09-24 16:16 1647PopupWindow 跟我们的 Activity 不一样 ... -
android.view.WindowManager$BadTokenException: Unable to add window -- token null
2013-06-26 22:42 3320今天在创建一个窗口的时候老是报错,很少郁闷。 引起错误的 ... -
Android处理Home键方法小结
2013-06-18 10:06 23419昨天需要处理一个问 ...
相关推荐
### Android手机震动节奏知识点解析 #### 一、引言 在Android开发中,手机震动功能是一种常见的用户交互方式,它可以作为一种提醒或者替代铃声的方法。本文档将详细介绍如何利用Android中的`Vibrator`类实现手机...
下面是一个创建复杂震动节奏的例子: ```java long[] vibrationPattern = {0, 50, 100, 50, 200, 100}; // 0ms开始,然后50ms震动,100ms停,50ms震,200ms停,100ms震 vibrator.vibrate(vibrationPattern, -1); ``...
在智能手机的日常使用中,"手机震动提示"是一种常见的功能,它允许用户在接收通知、来电或其他特定事件时,通过设备的内置马达产生震动反馈,而非依赖声音提醒。这在静音环境下或者用户需要保持低调的情况下尤其有用...
在Android系统中,调用手机震动功能是通过`Vibrator`类实现的。这个类提供了对设备震动硬件的控制,让我们能够实现各种基于震动的反馈效果。在这个“调用手机震动实验源码+注释”中,我们可以学习如何在Android应用...
手机震动插件是一种软件工具,专门用于为Android和iOS设备提供自定义的震动效果。它通过封装API(应用程序编程接口)使得开发者或普通用户能够轻松地控制手机的震动功能,从而实现不同场景下的个性化体验。在移动...
在Android平台上,实现手机震动效果是一项常见的功能,可以用于提醒用户或者增强交互体验。下面将详细解释如何在Android应用中实现实现手机震动,并通过一个简单的示例代码VibratorDemo来展示具体步骤。 首先,我们...
在Android应用开发中,有时需要实现手机震动的功能,例如在通知提醒、游戏反馈或其他互动场景下。Android系统提供了Vibrator类来实现这一功能。以下是详细的知识点解释: 1. **获取Vibrator服务**: 要使用...
例如,在查询手机号码归属地的功能中,如果用户未输入号码,可以先执行输入框的抖动动画,再进行手机震动,同时显示提示信息: ```java public void queryNumber(View v) { String phone = et_phone.getText()....
9. 操作反馈:良好的手机游戏交互设计会给予用户清晰的操作反馈,无论是音效、震动还是视觉提示,都能让用户知道他们的动作已被系统识别。 10. 用户习惯与教程:手机游戏用户群体广泛,设计师需要考虑新手和资深...
这个"Android中模仿心跳效果小程序"就是一个很好的示例,它主要用于在特定场景下(如计时结束)通过手机震动来营造紧张氛围。由于Android模拟器不支持硬件震动功能,所以这类效果必须在真实的Android设备上进行测试...
5.6 手机震动的节奏 5.7 图文可视化提醒 5.8 状态栏的图标与文字提醒 5.9 搜索手机通讯录自动完成 5.10 取得联系人资料 5.11 制作有图标的文件资源 .管.理. 器 5.12 还原...
5.6 手机震动的节奏——Vibrator对象及周期运用 5.7 图文可视化提醒——Toast与LinearLayoutView 5.8 状态栏的图标与文字提醒——NotificationManager与Notification对象的应用 5.9 搜索手机通讯录自动完成——使用...
5.6 手机震动的节奏——Vibrator对象及周期运用 5.7 图文可视化提醒——Toast与LinearLayoutView 5.8 状态栏的图标与文字提醒——NotificationManager与Notification对象的应用 5.9 搜索手机通讯录自动完成——使用...
5.6 手机震动的节奏——Vibrator对象及周期运用 5.7 图文可视化提醒——Toast与LinearLayoutView 5.8 状态栏的图标与文字提醒——NotificationManager与Notification对象的应用 5.9 搜索手机通讯录自动完成——使用...
- **案例分析**:Nexus One手机通过震动反馈告诉用户已点击某个物理按键;三星Anycall Haptic手机则在使用特定功能时通过触觉传递信息。 - **技术创新**:索尼公司的“触觉引擎”技术利用触觉产生器将电子信号转化为...
这一举动不仅震动了整个科技行业,也为市场带来了深远的影响。荣耀,作为华为的子品牌,一直以来以其高性价比和创新技术深受消费者喜爱,此次剥离是华为应对美国制裁的策略之一,旨在保护荣耀品牌及产业链的生存与...
5.6 手机震动的节奏——Vibrator对象及周期运用 5.7 图文可视化提醒——Toast与LinearLayoutView 5.8 状态栏的图标与文字提醒——NotificationManager与Notification对象的应用 5.9 搜索手机通讯录自动完成——使用...
5.6 手机震动的节奏——Vibrator对象及周期运用 5.7 图文可视化提醒——Toast与LinearLayoutView 5.8 状态栏的图标与文字提醒——NotificationManager与Notification对象的应用-p178 5.9 搜索手机通讯录自动完成——...
5.3 自制发送短信程序——SmsManager与PendingIntent对象 5.4 自制发送Email程序——Intent在Email上的使用 5.5 自制日历手机数据库——实现SQLiteOpenHelper 5.6 手机震动的节奏——Vibrator对象及周期运用 ...