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:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <EditText android:id="@+id/et_text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentRight="true" android:layout_alignParentTop="true" android:layout_marginTop="16dp" android:ems="10" > <requestFocus /> </EditText> <Button android:id="@+id/btn_submit" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/et_text" android:layout_below="@+id/et_text" android:layout_marginTop="38dp" android:text="提交" /> </RelativeLayout>

(2)MainActivity.java

package com.example.test11; import android.app.Activity; import android.os.Bundle; import android.os.Vibrator; import android.text.TextUtils; import android.view.View; import android.view.View.OnClickListener; import android.view.animation.Animation; import android.view.animation.AnimationUtils; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; public class MainActivity extends Activity { private EditText et_text; private Button btn_submit; /** * 手机振动器 */ private Vibrator vibrator; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); et_text = (EditText) this.findViewById(R.id.et_text); btn_submit = (Button) this.findViewById(R.id.btn_submit); // 震动效果的系统服务 vibrator = (Vibrator) getSystemService(VIBRATOR_SERVICE); btn_submit.setOnClickListener(new OnClickListener() { String text = et_text.getText().toString().trim(); public void onClick(View v) { if (TextUtils.isEmpty(text)) { Toast.makeText(MainActivity.this, "内容为空", 0).show(); Animation shake = AnimationUtils.loadAnimation( MainActivity.this, R.anim.shake); et_text.startAnimation(shake); /* * 震动的方式 */ // vibrator.vibrate(2000);//振动两秒 // 下边是可以使震动有规律的震动 -1:表示不重复 0:循环的震动 long[] pattern = { 200, 2000, 2000, 200, 200, 200 }; vibrator.vibrate(pattern, -1); } } }); } }

(3)使用到的两个动画文件如下:
cycle_7.xml

<?xml version="1.0" encoding="utf-8"?> <cycleInterpolator xmlns:android="http://schemas.android.com/apk/res/android" android:cycles="7" />

shake.xml

<?xml version="1.0" encoding="utf-8"?> <translate xmlns:android="http://schemas.android.com/apk/res/android" android:duration="1000" android:fromXDelta="0" android:interpolator="@anim/cycle_7" android:toXDelta="10" />

(4)需要使用的权限:

<uses-permission android:name="android.permission.VIBRATE" />

希望本文所述对大家学习Android软件编程有所帮助。

时间: 2024-11-13 08:58:17

Android实现手机震动效果的相关文章

Android实现手机震动效果_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中手机震动的设置(Vibrator)的步骤简要说明_Android

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

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

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

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

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

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

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

Android实现调用震动的方法_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手机卫士之抖动输入框和手机震动_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" interpo

浅析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" interpo

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

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