Android, Intent.FLAG_ACTIVITY_CLEAR_TOP wydaje się nie działać?

W moim menu mam kilka przedmiotów. Strona główna jest jej elementem, który chcę być rootem mojej aplikacji i za każdym razem, gdy użytkownik na nią kliknie, wyczyści stos Android, a następnie powróci do głównego ekranu.

To jest mój kod:

menu.setOnItemClickedListener(new MenuClickedListener() {
            public void eventOccured(int id) {          

                Intent intent = null;
                switch(id) {
                    case 1: intent = new Intent(context, More.class);           break;
                    case 2: intent = new Intent(context, FavoriteScreen.class); break;
                    case 3: intent = new Intent(context, VideoShowList.class);  break;
                    case 4: intent = new Intent(context, ShoppingList.class);   break;
                    case 5: intent = new Intent(context, MainScreen.class); 
                            intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                            break;                  
                }       

                if(intent != null)
                    context.startActivity(intent); 
            }
        });

Menu działa dobrze, ale wygląda na to, że flaga nie działa, ponieważ z ekranu głównego przechodzę do drugiego i trzeciego ekranu, a następnie klikam na element główny menu i wracam do ekranu głównego. Teraz, gdy klikam przycisk Wstecz, przechodzę do trzeciego ekranu, drugiego ekranu i ekranu głównego.

Zaprojektowałem to menu jako widżet, aby skonfigurować go raz i użyć ponownie na wszystkich moich ekranach.

Wszelkie sugestie będą mile widziane. Dzięki.

questionAnswers(6)

yourAnswerToTheQuestion