插补器实现输入框抖动效果

什么都不说,直接上代码:


//提示用户输入框不能为空,特效有抖动动画
   Animation shake=AnimationUtils.loadAnimation(this, R.anim.shake);
   //自定义插补器cycle_7
    shake.setInterpolator(new Interpolator() {
   //x表示时间,y表示距离
    @Override
    public float getInterpolation(float x) {
    float y = x;
    return y;
    }
    });
   etNumber.startAnimation(shake);
   //手机抖动
   vibrate();
<p style="line-height: 21px; widows: auto;"><span style="font-family:SimSun;font-size:10px;"><span style="line-height: 21px; widows: auto;">/**
</span>  * 手机抖动需要权限: android.permission.VIBRATE
  */
 private void vibrate() {
  //获取抖动的服务
  Vibrator vibrator=(Vibrator) getSystemService(VIBRATOR_SERVICE);
  //设置抖动的时间
//	 vibrator.vibrate(2000);
  //设置抖动的方式
  // 先停留1秒,再震动2秒,再停留2秒,再震动5秒...,
 
  // 参2是-1时表示不循环,
  // 参2的值表示循环开始的位置,
  // 是0,表示从第0个位置开始循环
  vibrator.vibrate(new long[]{1000,2000,2000,4000},0);
  //取消震动
   vibrator.cancel();
 }</span></p>



自定义插补器cycle_7

<?xml version="1.0" encoding="UTF-8"?>

<!-- 插补器 cycles:循环次数 -->
<cycleInterpolator android:cycles="7" xmlns:android="http://schemas.android.com/apk/res/android"/>


shake.xml
<?xml version="1.0" encoding="UTF-8"?>

<!-- duration:抖动时间 toXDelta:向右抖动10 -->
<translate android:toXDelta="10" 
android:interpolator="@anim/cycle_7" 
android:fromXDelta="0" 
android:duration="1000" 
xmlns:android="http://schemas.android.com/apk/res/android"/>




自己运行吧!!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值