我有一個tablayout
像下面這樣:如何防止迅速點擊開關選項卡中的Android
我想安裝一個間隔時間(例如:500毫秒)選項卡之間切換,這意味着當我點擊「第一個」選項卡,然後立即點擊「第二個」,它不會切換到標籤「第二」,當且僅當點擊「首次」,500毫秒後,選項卡「秒」上的點擊事件有效,如果我點擊在500ms內按「第一個」,「第二個」,「第三個」和「第四個」,點擊「Second」和「Third」將會失效,標籤將直接從「First」切換到「Fourth」實現它?
我有一個tablayout
像下面這樣:如何防止迅速點擊開關選項卡中的Android
我想安裝一個間隔時間(例如:500毫秒)選項卡之間切換,這意味着當我點擊「第一個」選項卡,然後立即點擊「第二個」,它不會切換到標籤「第二」,當且僅當點擊「首次」,500毫秒後,選項卡「秒」上的點擊事件有效,如果我點擊在500ms內按「第一個」,「第二個」,「第三個」和「第四個」,點擊「Second」和「Third」將會失效,標籤將直接從「First」切換到「Fourth」實現它?
我不知道如果我完全理解你的邏輯與選項卡。無論如何,你可以使用Handler等待500毫秒。您可以根據需要修改示例。
您可以創建一個處理程序是這樣的:
boolean mClickAllowed = true;
Handler mHandler = new Handler();
Runnable mRunnable = new Runnable() {
public void run() {
mClickAllowed = true;
}
};
檢查是否點擊是允許的。點擊選項卡後,啓動可運行並將mClickAllowed設置爲false。可運行的命令將允許在500ms後點擊。
// Your Tab clickListner
public void onTabClick(View view) {
if(mClickAllowed) {
// When a tab is clicked, post the runnable
mClickAllowed = false;
mHandler.postDelayed(mRunnable, 500); // run after 500ms
}
}
不要忘記暫停廣告活動後,去掉你處理程序回調
protected void onPause() {
mHandler.removeCallbacks(mRunnable);
}
Thx,這就是我想要的。 – goddess1875
你爲什麼在標籤之間切換設置500ms的間隔時間? –