今天小编就为大家分享一篇关于Android实现手机震动抖动效果的方法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
Android手机震动抖动效果的实现
(1)布局文件如下
(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
shake.xml
(4)需要使用的权限:
这个效果一般只有在真机上可以做到,不在上图展示。
总结