一些输入框如果没用数据内容的时候,一般我们都会给一个提示,那么这次给它来一个更明显的效果就是让它抖动起来,实现也很容易,就是简单的动画
首先在res目录下新建一个anim动画文件夹,在里面新建动画文件shake.xml
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXDelta="0"
android:toXDelta="10"
android:duration="1000"
android:interpolator="@anim/cycle_7">
<!--
fromXDelta: 抖动起始位置
toXDelta:抖动结束位置
duration:抖动时间
interpolator:在抖动时间内抖动次数
-->
</translate>
这里面设置抖动次数用的是一个插值器,那么我们再新建一个cycle_7.xml文件,我这个是让它1秒抖动7次(根据实际情况自行设定)
<?xml version="1.0" encoding="utf-8"?>
<cycleInterpolator xmlns:android="http://schemas.android.com/apk/res/android"
android:cycles="7">
<!-- 插值器 再规定事件内抖动的次数 -->
</cycleInterpolator>
设置好上面这些之后就可以在页面的具体位置使用 了。
tv_test.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Animation shake = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.shake);
et_search.startAnimation(shake);//抖动
}
});
下面再来一张最后的效果图