Android, Intent.FLAG_ACTIVITY_CLEAR_TOP, кажется, не работает?

В моем меню есть несколько пунктов. Домашняя страница - это элемент, который я хочу получить в корне моего приложения, и всякий раз, когда пользователь нажимает на него, Android очищает стек, а затем возвращается на главный экран.

Это мой код:

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); 
            }
        });

Меню работает нормально, но, кажется, флаг не работает, потому что с главного экрана я перехожу на второй и третий экран, затем я нажимаю на элемент меню «Домой» и возвращаюсь на главный экран. Теперь, когда я нажимаю кнопку «Назад», я перехожу на третий экран, второй экран и домашний экран.

Я разработал это меню как виджет, чтобы настроить его один раз и использовать на всех своих экранах.

Мы ценим любые предложения. Благодарю.

Ответы на вопрос(6)

Ваш ответ на вопрос