Jak zapobiec podwójnemu uruchomieniu kodu, klikając dwa razy szybko na przycisk w Androidzie
Jeśli kliknę szybko przycisk w mojej aplikacji na Androida, wydaje się, że kod za nim działa dwa razy. Jeśli kliknę dwukrotnie przycisk menu, aktywność, która ma zostać uruchomiona, kliknie po prostu dwa razy i muszę z niej dwukrotnie wyjść.
Jest to naprawdę denerwujące, ponieważ jeśli kliknę zbyt szybko dla przycisków menu, mogę załadować całą masę działań w tle i muszę je zamknąć jeden po drugim, więc jest to wyraźnie błędny stan mojej aplikacji, chcę to naprawić.
Co mogę zrobić z tym problemem?
Używam prostych onClickListeners i Buttons
EDYTOWAĆ:
Jeśli chodzi o odpowiedzi i komentarze, moje przyciski menu wyglądają tak:
top20Button.setOnClickListener(new OnClickListener()
{
public void onClick(View v)
{
favButton.setClickable(false);
nearButton.setClickable(false);
highlightedButton.setClickable(false);
top20Button.setClickable(false);
Intent i = new Intent();
i.putExtra("showDialog", false);
i.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
i.setClass(Search.this, Top20.class);
startActivity(i);
finish();
}
});
Po tych wszystkich korektach jest to nadal to samo: S Kiedy klikam jak szalona osoba, wiele aktywności jest na stosie historii i muszę wyjść kilka razy.
Jakieś sugestie ? Co robię źle?