在用戶使用 Android 應(yīng)用的時候,經(jīng)常會出現(xiàn)過快且多次點擊同一按鈕的情況,一方面這是因為應(yīng)用或手機當(dāng)前有些卡頓,另一方面也可能是由于很多應(yīng)用并沒有設(shè)置按鈕點擊時的 selector 或者其它按鈕響應(yīng)方式(例如點擊按鈕時按鈕放大,常見于游戲),導(dǎo)致用戶誤認(rèn)為沒有點擊到當(dāng)前按鈕,當(dāng)然,除了相對應(yīng)的對應(yīng)用進行優(yōu)化和設(shè)置點擊selector以外,我們還可以做一些其它的工作,例如,判斷按鈕的 onClick 事件在規(guī)定事件段內(nèi)只響應(yīng)一次(在論壇的搜索功能中,我們常見到每10秒才可以進行一次搜索的設(shè)置,這就在一定程度上減少了無效的網(wǎng)絡(luò)訪問量,減輕服務(wù)器壓力,APP同理),就如下面代碼所示:

public final class AppUtils {
private AppUtils() {
}
private static long mLastClickTime;// 用戶判斷多次點擊的時間
public static boolean isFastDoubleClick() {
long time = System.currentTimeMillis();
if (Math.abs(time - mLastClickTime) < 500) {
return true;
}
mLastClickTime = time;
return false;
}
}
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (AppUtils.isFastDoubleClick()){
// 進行點擊事件后的邏輯操作
}
}
});
網(wǎng)站欄目:Android防止過快(多次)點擊的實現(xiàn)方法-創(chuàng)新互聯(lián)
文章轉(zhuǎn)載:http://www.chinadenli.net/article24/dpsdje.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站、App設(shè)計、小程序開發(fā)、網(wǎng)站制作、定制開發(fā)、Google
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容