Android應(yīng)用實(shí)現(xiàn)點(diǎn)擊按鈕震動(dòng)
本項(xiàng)目為大家分享了Android應(yīng)用實(shí)現(xiàn)點(diǎn)擊按鈕震動(dòng)的具體代碼,供大家參考,具體內(nèi)容如下
項(xiàng)目中需要實(shí)現(xiàn)點(diǎn)擊應(yīng)用中的按鈕,有震動(dòng)效果。震動(dòng)效果可以在設(shè)置中進(jìn)行關(guān)閉。
具體實(shí)現(xiàn)如下。
編寫震動(dòng)幫助類:VibrateHelp.java
import android.content.Context;
import android.os.Vibrator;
/**
* 震動(dòng)幫助類
* androidManifest.xml中加入 以下權(quán)限
* <uses-permission android:name="android.permission.VIBRATE" />
*/
public class VibrateHelp {
private static Vibrator vibrator;
/**
* 簡(jiǎn)單震動(dòng)
* @param context 調(diào)用震動(dòng)的Context
* @param millisecond 震動(dòng)的時(shí)間,毫秒
*/
@SuppressWarnings("static-access")
public static void vSimple(Context context, int millisecond) {
vibrator = (Vibrator) context.getSystemService(context.VIBRATOR_SERVICE);
vibrator.vibrate(millisecond);
}
/**
* 復(fù)雜的震動(dòng)
* @param context 調(diào)用震動(dòng)的Context
* @param pattern 震動(dòng)形式
* @param repeate 震動(dòng)的次數(shù),-1不重復(fù),非-1為從pattern的指定下標(biāo)開(kāi)始重復(fù)
*/
@SuppressWarnings("static-access")
public static void vComplicated(Context context, long[] pattern, int repeate) {
vibrator = (Vibrator) context.getSystemService(context.VIBRATOR_SERVICE);
vibrator.vibrate(pattern, repeate);
}
/**
* 停止震動(dòng)
*/
public static void stop() {
if (vibrator != null) {
vibrator.cancel();
}
}
}
下面自定義實(shí)現(xiàn)按鈕單擊震動(dòng)類:ViewClickVibrate.java
import android.view.View;
import android.view.View.OnClickListener;
public class ViewClickVibrate implements OnClickListener{
/** 按鈕震動(dòng)時(shí)間 */
private final int VIBRATE_TIME = 60;
@Override
public void onClick(View v) {
// TODO 根據(jù)設(shè)置中的標(biāo)記判斷是否執(zhí)行震動(dòng)
VibrateHelp.vSimple(v.getContext(), VIBRATE_TIME);
}
}
最后,在給按鈕設(shè)置監(jiān)聽(tīng)時(shí),使用類ViewClickVibrate,如下所示:MainActivity.java
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
public class MainActivity extends Activity {
Button btn1;
Button btn2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn1 = (Button) findViewById(R.id.button1);
btn2 = (Button) findViewById(R.id.button2);
btn1.setOnClickListener(new ViewClickVibrate() {
public void onClick(View v) {
super.onClick(v);
// TODO
}
});
btn2.setOnClickListener(new ViewClickVibrate() {
public void onClick(View v) {
super.onClick(v);
// TODO
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
也可以自定義其他控件的單擊事件,實(shí)現(xiàn)單擊震動(dòng)效果,類似上面改之即可。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
基于Android中手勢(shì)交互的實(shí)現(xiàn)方法
本篇文章是對(duì)Android中手勢(shì)交互的實(shí)現(xiàn)進(jìn)行了詳細(xì)的分析介紹。需要的朋友參考下2013-05-05
Android視頻懸浮窗口實(shí)現(xiàn)的示例代碼
這篇文章主要介紹了Android視頻懸浮窗口實(shí)現(xiàn)的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-04-04
Android實(shí)現(xiàn)跑馬燈效果的代碼詳解
Android中實(shí)現(xiàn)跑馬燈效果有多種方式,本文給大家介紹了Android實(shí)現(xiàn)跑馬燈效果的簡(jiǎn)單示例,對(duì)大家的學(xué)習(xí)或工作有一定的幫助,感興趣的朋友可以參考下2018-05-05
Android中實(shí)現(xiàn)延時(shí)執(zhí)行操作的方法小結(jié)
在Android開(kāi)發(fā)中我們可能會(huì)有延時(shí)執(zhí)行某個(gè)操作的需求,這篇文章主要介紹了Android中實(shí)現(xiàn)延時(shí)執(zhí)行操作的幾種方法,需要的朋友可以參考下2018-10-10
Flutter實(shí)現(xiàn)視頻壓縮功能的示例代碼
移動(dòng)應(yīng)用程序中,視頻占用了大量的存儲(chǔ)空間和帶寬,這在一定程度上影響了應(yīng)用程序的性能和用戶體驗(yàn),所以本文為大家準(zhǔn)備了Flutter實(shí)現(xiàn)視頻壓縮的方法,需要的可以參考一下2023-06-06
Android 如何實(shí)現(xiàn)動(dòng)態(tài)申請(qǐng)權(quán)限
這篇文章主要介紹了Android 如何實(shí)現(xiàn)動(dòng)態(tài)申請(qǐng)權(quán)限。具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-03-03
解決android設(shè)備斷電重啟后WIFI不能自動(dòng)重連的BUG(收藏)
這篇文章主要介紹了解決android設(shè)備斷電重啟后WIFI不能自動(dòng)重連的BUG,本文給出了問(wèn)題描述及分析過(guò)程,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-11-11
Android如何使用圓形揭露動(dòng)畫巧妙地隱藏或顯示View詳解
Android開(kāi)發(fā)中會(huì)遇到不少顯示和隱藏的問(wèn)題,下面這篇文章主要給大家介紹了關(guān)于Android如何使用圓形揭露動(dòng)畫巧妙地隱藏或顯示View的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-04-04

