Android Listview Clicking On Item Multiple Times
I have a listview with several items. When clicking on an item, an Activity is opened. However, when I click fast several times on the item, the activity, asociated with it, is ope
Solution 1:
The correct way to prevent calls to the ListView items would be to (obviously) disable the OnItemClickListener
:
private void onNewsfeedClick(MyObject newsfeed) {
listView.setOnItemClickListener(null);
Intent intent = createIntent(newsfeed);
startActivity(intent);
}
Re-set the listener at onResume
, when this activity is visible again.
@Override
protected void onResume() {
super.onResume();
listView.setOnItemClickListener(newsfeedClickHandler);
}
Solution 2:
Maintain a boolean value say isItemClicked
and reset it when you return back to the listview.
private boolean isItemClicked;
private OnItemClickListener newsfeedClickHandler = new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
if (!isItemClicked) {
isItemClicked = true;
MyObject newsfeed = adapter.getItem(position);
onNewsfeedClick(newsfeed);
}
}
};
private void resetIsItemClicked() {
isItemClicked = false;
}
Solution 3:
To prevent multiple clicks on ListView Items, add the following code in your listview click listener:
if (SystemClock.elapsedRealtime() - mLastClickTimeListViewItem < 1000){
return;
}
Post a Comment for "Android Listview Clicking On Item Multiple Times"