Android 为点击事件添加震动效果

Android 点击Button 实现震动效果

学习自:网络


Overview

在Android 的点击效果中,遇到震动效果的还是很多的。
接下来就让我们看一下如何实现震动效果。


所需要的权限

如果我们在开发中需要使用到我们的震动,那么我们就需要申请一下权限:

这样我们的权限就申请好了。


我们震动效果的帮助类

创建一个名为VibrateHelp的点击震动的帮助类。
然后看一下如何使用他的把:

public class VibrateHelp {
    private static Vibrator vibrator;
    /**
     * @ClassName:VibrateHelp - 简单的震动
     * @author:CaoJiaHao
     * @Param:context 调用震动类的 context
     * @param:millisecond 震动的时间
     */
    @SuppressWarnings("static-access")
    public static void vSimple(Context context, int millisecode) {
        vibrator = (Vibrator) context.getSystemService(context.VIBRATOR_SERVICE);
        vibrator.vibrate(millisecode);
    }
    /**
     * @param : pattern 震动的形式
     * @param : repeate 震动循环的次数
     * @ClassName:VibrateHelp - 复杂的震动
     * @author:CaoJiaHao
     * @Param: context 调用复杂震动的context
     **/
    @SuppressWarnings("static-access")
    public static void vComplicated(Context context, long[] pattern, int repeate) {
        vibrator = (Vibrator) context.getSystemService(context.VIBRATOR_SERVICE);
        vibrator.vibrate(pattern, repeate);
    }
    /**
      *@ClassName:VibrateHelp - 停止震动
      *@author:CaoJiaHao
     **/
    public static void stop() {
        if (vibrator != null)
            vibrator.cancel();
    }
}

这样的话我们的 震动帮助类就完成呢。
然后我们根据我们的源码来分析一下:

  1. 我们需要将Vibrator 实例化一下。
  2. 然后我们创建我么你的简单的震动模式。
  3. 接着创建我们比较复杂的震动模式。
    这样我们的点击震动帮助类就完成了。

但是我们光有了帮助类是远远不够的。我们还需要调用他才可以,不然我们的Helper Class 没有任何作用。


封装我们的震动点击事件

首先,我们创建一个类,让他控制我们的点击震动效果。
我们创建一个名为ViewClickVibrate。然后先看一下源代码:

public class ViewClickVibrate implements View.OnClickListener {
    private final int VIBRATE_TIME = 60;
    @Override
    public void onClick(View v) {
        VibrateHelp.vSimple(v.getContext(), VIBRATE_TIME);
    }
}

这个就是我们的源代码,但是需要注意的是,我们封装的这个类,需要去调用我们的View.OnClickListener的接口.

这样我们的点击效果算是全部完成了。

最后我们看一下如何实现他吧。

ImageCategory.setOnClickListener(new ViewClickVibrate() {
    public void onClick(View v) {
        super.onClick(v);
        Global.Go(FinanceActivity.this, CategoryActivity.class);
    }
});

这样的一个点击效果就完成了。

你可能感兴趣的:(Android 为点击事件添加震动效果)