Android实现手机震动效果
更新时间:2021年09月27日 10:21:22 作者:徐刘根
这篇文章主要为大家详细介绍了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软件编程有所帮助。
相关文章
Android基础总结篇之三:Activity的task相关介绍
这篇文章主要介绍了Android基础总结篇之三:Activity的task相关介绍,具有一定的参考价值,有需要的可以了解一下。2016-11-11Android中的HTextView库实现TextView动画效果
HTextView是一个用来给TextView里的文字做各种转换动画的开源库,不仅提供了多种动画选择,而且还有重复字符的位移动画,虽然并没有多么复杂,但是它使用的这些典型的设计模式以及各种动画的实现确实可以从中让我们学到不少知识2023-12-12Eclipse+ADT+Android SDK搭建安卓开发环境的实现步骤
这篇文章主要介绍了Eclipse+ADT+Android SDK搭建安卓开发环境的实现步骤,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2021-09-09分析Android 11.0Settings源码之主界面加载
这篇文章主要介绍了分析Android 11.0Settings源码之主界面加载,对Android源码感兴趣的同学,可以着重看一下2021-04-04
最新评论