ListView 很短的時間內連續點選同一個item會跳轉兩次
阿新 • • 發佈:2019-02-11
我得解決方案是自定義一個方法
public abstract class NoDoubleItemClickListener implements OnItemClickListener { public static final int MIN_CLICK_DELAY_TIME = 1000; private long lastClickTime = 0; @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { long currentTime = Calendar.getInstance在程式碼中呼叫().getTimeInMillis(); if (currentTime - lastClickTime > MIN_CLICK_DELAY_TIME) { lastClickTime = currentTime; NoDoubleItemClickListener(view); } } public abstract void NoDoubleItemClickListener(View v); }
listView.setOnItemClickListener(new NoDoubleItemClickListener() { @Overridepublic void NoDoubleItemClickListener(View v) { } });
如果你是一個view,可以使用如下解決辦法
自己定義一個方法
public abstract class NoDoubleClickListener implements View.OnClickListener { public static final int MIN_CLICK_DELAY_TIME = 1000; private long lastClickTime = 0; @Override public void onClick(View v) { long在程式碼中呼叫currentTime = Calendar.getInstance().getTimeInMillis(); if (currentTime - lastClickTime > MIN_CLICK_DELAY_TIME) { lastClickTime = currentTime; onNoDoubleClick(v); } } public abstract void onNoDoubleClick(View v); }
view.setOnClickListener(new NoDoubleClickListener() { @Override public void onNoDoubleClick(View v) { } });