手机输入框抖动效果 和 震动效果
2015-06-28 12:23
351 查看
首先分析 输入框抖动 效果 实际上 就是一个动画 左右循环 抖动
Animation animation = AnimationUtils.loadAnimation(this, R.anim.shake);
//下面的 可以设置 动画的 插入器 用函数来控制动画的动作
/* animation.setInterpolator(new Interpolator() {
@Override
public float getInterpolation(float input) {
// TODO Auto-generated method stub
return 0;
}
});*/
edt_select_number.startAnimation(animation);
上面 2行 代码设置 动画 其中R.anim.shake 是 一个抖动动画的 xml文件 从系统中得到的 自己也可以 自定义
R.anim.shake
cycle_7.xml
而对于震动效果 需要一个private Vibrator vibrator;
vibrator = (Vibrator) getSystemService(VIBRATOR_SERVICE); 这是一个系统服务
由于 震动效果 会影响用户的使用 所以必须 添加相应的权限
<uses-permission
android:name="android.permission.VIBRATE"/>
vibrator.vibrate(2000);//振动两秒钟
//-1不重复,非-1为从pattern的指定下标开始重复
long[] pattern = {100,200,100,200,50,50}; //这个数组 是控制 震动的变化的
vibrator.vibrate(pattern, 1);
Animation animation = AnimationUtils.loadAnimation(this, R.anim.shake);
//下面的 可以设置 动画的 插入器 用函数来控制动画的动作
/* animation.setInterpolator(new Interpolator() {
@Override
public float getInterpolation(float input) {
// TODO Auto-generated method stub
return 0;
}
});*/
edt_select_number.startAnimation(animation);
上面 2行 代码设置 动画 其中R.anim.shake 是 一个抖动动画的 xml文件 从系统中得到的 自己也可以 自定义
R.anim.shake
<?xml version="1.0" encoding="utf-8"?> <!-- Copyright (C) 2007 The Android Open Source Project Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. --> <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
<?xml version="1.0" encoding="utf-8"?> <!-- Copyright (C) 2007 The Android Open Source Project Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. --> <cycleInterpolator xmlns:android="http://schemas.android.com/apk/res/android" android:cycles="7" />其中 插入器可以 自定义 就相当于 初中学的函数
而对于震动效果 需要一个private Vibrator vibrator;
vibrator = (Vibrator) getSystemService(VIBRATOR_SERVICE); 这是一个系统服务
由于 震动效果 会影响用户的使用 所以必须 添加相应的权限
<uses-permission
android:name="android.permission.VIBRATE"/>
vibrator.vibrate(2000);//振动两秒钟
//-1不重复,非-1为从pattern的指定下标开始重复
long[] pattern = {100,200,100,200,50,50}; //这个数组 是控制 震动的变化的
vibrator.vibrate(pattern, 1);
相关文章推荐
- 【麦可网】Cocos2d-X跨平台游戏开发学习笔记---第二十课:Cocos2D-X场景切换1-3
- 面试题整理:C#(二)
- Select …forupdate语句是我们经常使用手工加锁语句。
- 聊天服务器-解密陌生人(10)位置管理和获取周围一公里陌生人
- EditText 的 自动查询
- centOS 无线网卡驱动 安装 配置
- 数据结构--二进制转化为十进制的实现
- 源码分析之struts1自定义方法的使用与执行过程
- 二叉树的一系列操作
- LeetCode Jump Game
- What qualities characterize a great PhD student
- '\r'与'\n'的区别
- shell脚本:猜数字游戏
- shell脚本:猜数字游戏
- python实现搜索指定目录下文件及文件内搜索指定关键词的方法
- LeetCode Spiral Matrix
- tortoiseSVN svn+ssh
- 想搭建自己的网站,应该从哪处入手呢?选择什么样配置的服务器捏?通过哪些手段赚取足够的维护网
- Unity 脚本优化
- 分析用Python脚本关闭文件操作的机制