Android应用中实现点击按钮震动
来源:互联网 发布:福州软件测试招聘 编辑:程序博客网 时间:2024/06/05 22:57
项目中需要实现点击应用中的按钮,有震动效果。震动效果可以在设置中进行关闭。
具体实现如下。
编写震动帮助类:VibrateHelp.java
import android.content.Context;import android.os.Vibrator;/** * 震动帮助类 * androidManifest.xml中加入 以下权限 * <uses-permission android:name="android.permission.VIBRATE" /> */public class VibrateHelp {private static Vibrator vibrator;/** * 简单震动 * @param context 调用震动的Context * @param millisecond 震动的时间,毫秒 */@SuppressWarnings("static-access")public static void vSimple(Context context, int millisecond) {vibrator = (Vibrator) context.getSystemService(context.VIBRATOR_SERVICE);vibrator.vibrate(millisecond);}/** * 复杂的震动 * @param context 调用震动的Context * @param pattern 震动形式 * @param repeate 震动的次数,-1不重复,非-1为从pattern的指定下标开始重复 */@SuppressWarnings("static-access")public static void vComplicated(Context context, long[] pattern, int repeate) {vibrator = (Vibrator) context.getSystemService(context.VIBRATOR_SERVICE);vibrator.vibrate(pattern, repeate);}/** * 停止震动 */public static void stop() {if (vibrator != null) {vibrator.cancel();}}}
下面自定义实现按钮单击震动类:ViewClickVibrate.java
import android.view.View;import android.view.View.OnClickListener;public class ViewClickVibrate implements OnClickListener{/** 按钮震动时间 */private final int VIBRATE_TIME = 60;@Overridepublic void onClick(View v) {// TODO 根据设置中的标记判断是否执行震动VibrateHelp.vSimple(v.getContext(), VIBRATE_TIME);}}
import android.app.Activity;import android.os.Bundle;import android.view.Menu;import android.view.View;import android.widget.Button;public class MainActivity extends Activity {Button btn1;Button btn2;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);btn1 = (Button) findViewById(R.id.button1);btn2 = (Button) findViewById(R.id.button2);btn1.setOnClickListener(new ViewClickVibrate() {public void onClick(View v) {super.onClick(v);// TODO}});btn2.setOnClickListener(new ViewClickVibrate() {public void onClick(View v) {super.onClick(v);// TODO}});}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.main, menu);return true;}}
也可以自定义其他控件的单击事件,实现单击震动效果,类似上面改之即可。
1 0
- Android应用中实现点击按钮震动
- Android 实现点击震动效果
- Android中图片实现按钮点击效果
- Android中fragment实现按钮点击事件
- android点击组件震动
- 在同一应用中实现按钮的四种点击
- Android中listview条目中按钮点击事件的实现
- Android中在fragment中实现点击按钮事件
- Android中手机震动vibrate的实现
- Android中实现震动的方法
- Android 4.0中状态栏上各个按钮的点击实现
- Android XML中实现按钮点击效果以及背景平铺
- Android中按钮点击事件的四种实现方式
- Android中按钮的水波纹点击效果的实现
- Android中使用4种方式实现按钮点击操作
- Android中按钮的水波纹点击效果的实现
- android listview 中点击按钮实现跳转和删除
- Android 中点击某个按钮实现 返回键 的功能
- poj 3006 Theorem on Arithmetic Progressions 小结
- COCOS2DX 3.0 学习笔记:从源码分析Cocos2dx 3.0 Director类
- 转载 数据库学习心得
- unity自带寻路Navmesh入门教程(一)
- poj 2299 Ultra-QuickSort 题解
- Android应用中实现点击按钮震动
- Change Management Improvement ( Test score is 100%)
- hdu1272小希的迷宫 基础并查集
- /lib和/usr/lib、/usr/local/lib区别
- 博客迁移
- windows 网络编程
- 关于如何将多个Cpp文件关联起来
- bzoj 1218题解
- Ubuntu Linux下设置IP的配置命令