Android应用实现点击按钮震动

 更新时间:2021年09月27日 10:09:30   作者:DIY4MAN4  
这篇文章主要为大家详细介绍了Android应用实现点击按钮震动,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本项目为大家分享了Android应用实现点击按钮震动的具体代码,供大家参考,具体内容如下

项目中需要实现点击应用中的按钮,有震动效果。震动效果可以在设置中进行关闭。

具体实现如下。

编写震动帮助类: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;
 
 
 @Override
 public void onClick(View v) {
  // TODO 根据设置中的标记判断是否执行震动
  VibrateHelp.vSimple(v.getContext(), VIBRATE_TIME);
 }
}

最后,在给按钮设置监听时,使用类ViewClickVibrate,如下所示:MainActivity.java

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;
 
 @Override
 protected 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
   }
  });
 }
 
 @Override
 public 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;
 }
}

也可以自定义其他控件的单击事件,实现单击震动效果,类似上面改之即可。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 基于Android中手势交互的实现方法

    基于Android中手势交互的实现方法

    本篇文章是对Android中手势交互的实现进行了详细的分析介绍。需要的朋友参考下
    2013-05-05
  • Android视频悬浮窗口实现的示例代码

    Android视频悬浮窗口实现的示例代码

    这篇文章主要介绍了Android视频悬浮窗口实现的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-04-04
  • Android实现跑马灯效果的代码详解

    Android实现跑马灯效果的代码详解

    Android中实现跑马灯效果有多种方式,本文给大家介绍了Android实现跑马灯效果的简单示例,对大家的学习或工作有一定的帮助,感兴趣的朋友可以参考下
    2018-05-05
  • Android图片加载缓存框架Glide

    Android图片加载缓存框架Glide

    这篇文章主要为大家详细介绍了Android图片加载缓存框架Glide,感兴趣的小伙伴们可以参考一下
    2016-03-03
  • Android中实现延时执行操作的方法小结

    Android中实现延时执行操作的方法小结

    在Android开发中我们可能会有延时执行某个操作的需求,这篇文章主要介绍了Android中实现延时执行操作的几种方法,需要的朋友可以参考下
    2018-10-10
  • Flutter实现视频压缩功能的示例代码

    Flutter实现视频压缩功能的示例代码

    移动应用程序中,视频占用了大量的存储空间和带宽,这在一定程度上影响了应用程序的性能和用户体验,所以本文为大家准备了Flutter实现视频压缩的方法,需要的可以参考一下
    2023-06-06
  • Android 如何实现动态申请权限

    Android 如何实现动态申请权限

    这篇文章主要介绍了Android 如何实现动态申请权限。具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-03-03
  • 新手必看Android Studio入门详解

    新手必看Android Studio入门详解

    上篇文章已经说过了Android Studio的安装配置,这篇文章主要介绍了Android Studio入门详解以及一些常见的报错,新手同学一起从这里开始完成我们的第一个Android项目吧!
    2021-08-08
  • 解决android设备断电重启后WIFI不能自动重连的BUG(收藏)

    解决android设备断电重启后WIFI不能自动重连的BUG(收藏)

    这篇文章主要介绍了解决android设备断电重启后WIFI不能自动重连的BUG,本文给出了问题描述及分析过程,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-11-11
  • Android如何使用圆形揭露动画巧妙地隐藏或显示View详解

    Android如何使用圆形揭露动画巧妙地隐藏或显示View详解

    Android开发中会遇到不少显示和隐藏的问题,下面这篇文章主要给大家介绍了关于Android如何使用圆形揭露动画巧妙地隐藏或显示View的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-04-04

最新评论