Android實現(xiàn)手機震動效果
本文實例介紹了Android實現(xiàn)手機震動、抖動效果,分享給大家供大家參考,具體內(nèi)容如下
(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);
// 震動效果的系統(tǒng)服務
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, "內(nèi)容為空", 0).show();
Animation shake = AnimationUtils.loadAnimation(
MainActivity.this, R.anim.shake);
et_text.startAnimation(shake);
/*
* 震動的方式
*/
// vibrator.vibrate(2000);//振動兩秒
// 下邊是可以使震動有規(guī)律的震動 -1:表示不重復 0:循環(huán)的震動
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)需要使用的權(quán)限:
<uses-permission android:name="android.permission.VIBRATE" />
希望本文所述對大家學習Android軟件編程有所幫助。
相關文章
Android自定義LocationMarker的實現(xiàn)詳解
這篇文章主要為大家詳細介紹一個比較簡單的東西:自定義繪制Marker 其實就是自定義view, 跟軌跡沒太多關聯(lián),感興趣的小伙伴可以跟隨小編一起了解一下2023-02-02
android實現(xiàn)漢字轉(zhuǎn)拼音功能 帶多音字識別
這篇文章主要介紹了android實現(xiàn)漢字轉(zhuǎn)拼音功能,帶多音字識別,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-02-02
TextView使用SpannableString設置復合文本 SpannableString實現(xiàn)TextView的鏈接
這篇文章主要為大家詳細介紹了如何利用SpannableString實現(xiàn)TextView的鏈接效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-08-08
android開發(fā)之蜂鳴提示音和震動提示的實現(xiàn)原理與參考代碼
蜂鳴提示音和震動提示此功能在手機使用中很實用,最近在讀zxing項目,學到了不少東西;我們一起來看看他是怎么做的,感興趣的朋友可以了解下哦2013-01-01
android中使用SharedPreferences進行數(shù)據(jù)存儲的操作方法
本篇文章介紹了,在android中使用SharedPreferences進行數(shù)據(jù)存儲的操作方法。需要的朋友參考下2013-04-04
Android編程實現(xiàn)控件不同狀態(tài)文字顯示不同顏色的方法
這篇文章主要介紹了Android編程實現(xiàn)控件不同狀態(tài)文字顯示不同顏色的方法,涉及Android針對控件布局文件屬性設置及狀態(tài)判定等相關技巧,需要的朋友可以參考下2016-02-02
Android通過自定義ImageView控件實現(xiàn)圖片的縮放和拖動的實現(xiàn)代碼
通過自定義ImageView控件,在xml布局里面調(diào)用自定的組件實現(xiàn)圖片的縮放。下面給大家分享實現(xiàn)代碼,感興趣的朋友一起看看吧2016-10-10

