【问题标题】:How to disable intent redirecting the current activity to the same activity in android menu listview?如何禁用意图将当前活动重定向到android菜单列表视图中的相同活动?
【发布时间】:2026-02-11 21:00:01
【问题描述】:

我正在构建一个 android 应用程序。我已经制作了 listview 菜单。其中一个选项是配置文件页面。当我单击 listview 上的配置文件按钮时,活动被发送到配置文件活动。但是在启动配置文件后活动,如果我再次单击列表视图菜单中的配置文件按钮,配置文件活动再次启动。如何禁用此功能?

感谢您的宝贵时间。

代码如下。它的简单意图启动。

 //setting onclick listener on the menu items
    mDrawerList.setOnItemClickListener(new AdapterView.OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> adapterView, View view, int position, long l) {

            if(position == 8){
                Intent i = new Intent(view.getContext(),Chat.class);
                startActivity(i);
            }
            else if(position == 7){
                Intent i = new Intent(view.getContext(),SaleAndRentList.class);
                startActivity(i);
            }
            else if(position == 1){
                Intent i = new Intent(view.getContext(),FriendsList.class);
                startActivity(i);
            }
            else if(position == 0){
                Intent i = new Intent(view.getContext(),Profile.class);
                startActivity(i);
            }
            else if(position == 6){
                Intent i = new Intent(view.getContext(),CountryStudentList.class);
                startActivity(i);
            }
            else if(position == 5){
                Intent i = new Intent(view.getContext(),UnivStudentList.class);
                startActivity(i);
            }
        }
    });

【问题讨论】:

    标签: android listview android-intent


    【解决方案1】:

    例如,只需将先前选择的位置保留在 Singleton 类中。再次单击该按钮时,检查上一个位置是否与所选位置相同。

    【讨论】:

    • 好的,我按照你告诉我的方式做了。它运作良好。但如果我使用手机的后退按钮回到活动,单吨类的属性仍然具有即使当前活动的位置发生了变化,也可以使用先前的位置值
    • 加载每个活动时( onCreate() )用当前活动对应的值更新单例中的值。
    • 不知道我今天的大脑在哪里。谢谢您的时间
    最近更新 更多