浅析Android手机卫士之抖动输入框和手机震动

查看apiDemos,找到View/Animation/shake找到对应的动画代码,直接拷贝过来

当导入一个项目的时候,报R文件不存在,很多情况是xml文件出错了

Animation shake = AnimationUtils.loadAnimation(this, R.anim.shake);

et_phone.startAnimation(shake);

动画的xml文件shake.xml

android:interpolator="@anim/cycle_7"

interpolator是插入器,可以定义动画的速度等

调用Animation对象的setInterpolator()方法,设置插入器,参数:Interpolator对象

匿名实现Interpolator接口,重写getInterpolation()方法,设置中自定义动画速率,传入一个flaot x

输入框的震动效果

获取Vibrator对象,调用getSystemService()方法,参数:VIBRATOR_SERVICE

调用Vibrator对象的vibrate()方法,参数:毫秒

需要添加权限android.permission.VIBRATE

这个可以做一些振动器~

/**
* 查询归属地
*/
public void queryNumber(View v) {
phone = et_phone.getText().toString().trim();
if (TextUtils.isEmpty(phone)) {
//抖动动画
Animation shake = AnimationUtils.loadAnimation(this, R.anim.shake);
et_phone.startAnimation(shake);
//手机震动
vibrator.vibrate(2000);
Toast.makeText(this, "请输入手机号码", 0).show();
return;
}
String result = NumberQueryAddressUtil.queryAddress(phone);
tv_address.setText(result);
}

shake.xml

<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:duration="1000"
android:fromXDelta="0"
android:interpolator="@anim/cycle_7"
android:toXDelta="10" /> 

cycle_7.xml

<cycleInterpolator xmlns:android="http://schemas.android.com/apk/res/android" android:cycles="7" />

以上所述是小编给大家介绍的Android手机卫士之输入框抖动和手机震动的相关内容,希望对大家有所帮助!

(0)

相关推荐

  • android开发之蜂鸣提示音和震动提示的实现原理与参考代码

    最近在读zxing项目,学到了不少东西.推荐大家也读读.里面有个BeepManager类,实现一个蜂鸣音和震动的实现.我们一起来看看他是怎么做的: 蜂鸣 1.准备一个 音频文件 比如:beep.ogg. ogg格式是声音压缩格式的一种,类似mp3这样.我们准备播放它,就产生了蜂鸣的效果. 2.为activity注册的默认 音频通道 . activity.setVolumeControlStream(AudioManager.STREAM_MUSIC); 这里声明为 STREAM_MUSIC的通道

  • Android登陆界面实现清除输入框内容和震动效果

    本文为大家分享Android登陆界面实现清除输入框内容和震动效果的全部代码,具体内容如下: 效果图: 主要代码如下 自定义的一个EditText,用于实现有文字的时候显示可以清楚的按钮: import android.content.Context; import android.graphics.drawable.Drawable; import android.text.Editable; import android.text.TextWatcher; import android.uti

  • Android实现调用震动的方法

    本文实例讲述了Android实现调用震动的方法.分享给大家供大家参考,具体如下: 调用Android系统的震动,只需要一个类 那就是Vibrator ,这个类在hard包中,一看系统级的服务,又要通过manifest.xml文件设置权限了 <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/an

  • Android 如何定制vibrator的各种震动模式M 具体方法

    一般振动时间的配置在如下文件: 复制代码 代码如下: frameworks/base/core/res/res/values/config.xml    <!-- 长按振动 -->    <!-- Vibrator pattern for feedback about a long screen/key press -->    <integer-array name="config_longPressVibePattern">        <

  • android获取情景模式和铃声 实现震动、铃声提醒

    当我们想通过铃声或者震动提醒用户的时候(类似于手机来电提醒界面),我们需要考虑到手机本身的情景模式.(目前有个OPPO的测试手机就发现,即使调为了静音模式,我依旧可以将铃声播放出来),为了防止"灵异"事件的发生,所以在提示前将情景模式判断以便还是有必要的,特地将代码纪录. 1.获取手机情景模式: AudioManager audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE); int ringerMo

  • Android Vibrator调节震动代码实例

    使用Vibrator的vibrate()可调节震动时间:cancel()取消震动. 复制代码 代码如下: <!-震动权限--> <uses-permission android:name="android.permission.VIBRATE"/> //振动器实例化 private Vibrator mVibrator1; mVibrator1=(Vibrator) getApplication().getSystemService(Service.VIBRAT

  • Android编程实现手机震动功能的方法

    本文实例讲述了Android编程实现手机震动功能的方法.分享给大家供大家参考,具体如下: 在与用户交互时,常常会用到震动功能,以提醒用户.该功能实现比较简单,请参阅下面主要代码: import android.app.Activity; import android.app.Service; import android.os.Vibrator; public class TipHelper { public static void Vibrate(final Activity activity

  • android 触屏的震动响应接口调用方法

    调用native 方法来开启和关闭vibrator: native static void vibratorOn(long milliseconds); native static void vibratorOff(); 调用方法如下: VibratorService.vibratorOn()

  • Android实现手机震动效果

    本文实例介绍了Android实现手机震动.抖动效果,分享给大家供大家参考,具体内容如下 (1)布局文件如下 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:la

  • Android震动与提示音实现代码

    本文实例为大家分享了android消息提示的具体代码,供大家参考,具体内容如下 protected AudioManager audioManager; protected Vibrator vibrator; audioManager = (AudioManager)getSystemService(Context.AUDIO_SERVICE); //此方法是由Context调用的 vibrator = (Vibrator)getSystemService(Context.VIBRATOR_S

  • android滑动解锁震动效果的开启和取消

    如果我们需要根据设置中的触摸震动开关来开启和取消滑动解锁的震动效果,就需要做以下修改了. 在LockScreen.java类中的LockScreen方法中的 复制代码 代码如下: else if (mUnlockWidget instanceof MultiWaveView) {            MultiWaveView multiWaveView = (MultiWaveView) mUnlockWidget; multiWaveView.setVibrateEnabled(Setti

  • Android中手机震动的设置(Vibrator)的步骤简要说明

    Android中手机震动的设置(Vibrator)的步骤: a.通过系统服务获得手机震动服务,Vibrator vibrator = (Vibrator)getSystemService(VIBRATOR_SERVICE); b.得到震动服务后检测vibrator是否存在: vibrator.hasVibrator(); 检测当前硬件是否有vibrator,如果有返回true,如果没有返回false. c.根据实际需要进行适当的调用, vibrator.vibrate(long millisec

随机推荐