如何在导航抽屉中添加活动

     2023-04-19     162

关键词:

【中文标题】如何在导航抽屉中添加活动【英文标题】:How to add activity in Navigation Drawer 【发布时间】:2021-07-05 14:55:06 【问题描述】:

我正在尝试在我的导航抽屉中添加一个活动。我已经在我的主要活动中加入了带有项目 id 的 switch case 的意图。我的应用程序运行完美,但意图没有工作,当我单击我添加意图抽屉关闭但我无法移动到活动的项目时,这是下面的代码。

我打算注册

public class MainActivity extends AppCompatActivity 
DrawerLayout drawerLayout;
NavigationView navigationView;
androidx.appcompat.widget.Toolbar toolbar;
TextView textView;

@Override
protected void onCreate(Bundle savedInstanceState) 
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    toolbar = findViewById(R.id.toolBar);
    setSupportActionBar(toolbar);
    textView = findViewById(R.id.heyTv);
    drawerLayout = findViewById(R.id.drawer_layout);

    ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(this, drawerLayout, toolbar,
            R.string.navigation_drawer_open, R.string.navigation_drawer_close);
    drawerLayout.addDrawerListener(toggle);
    toggle.syncState();

    navigationView = findViewById(R.id.navView);


    navigationView.setNavigationItemSelectedListener(new NavigationView.OnNavigationItemSelectedListener() 
        @Override
        public boolean onNavigationItemSelected(@NonNull MenuItem item) 
            switch (item.getItemId())
                case R.id.home:
                    Toast.makeText(MainActivity.this, "Trial", Toast.LENGTH_SHORT).show();
                    break;
                case R.id.profile:
                    Toast.makeText(MainActivity.this, "User", Toast.LENGTH_SHORT).show();
                    break;
                case R.id.logout:
                    new AlertDialog.Builder(MainActivity.this)
                            .setTitle("Logout")
                            .setIcon(R.drawable.ic_logout)
                            .setMessage("Sure! You want to logout")
                            .setPositiveButton("Yes", new DialogInterface.OnClickListener() 
                                @Override
                                public void onClick(DialogInterface dialog, int which) 
                                    Intent intent = new Intent(MainActivity.this, SigninActivity.class);
                                    startActivity(intent);
                                
                            ).setNegativeButton("No", new DialogInterface.OnClickListener() 
                        @Override
                        public void onClick(DialogInterface dialog, int which) 
                            dialog.dismiss();
                        
                    ).setNeutralButton("Help", new DialogInterface.OnClickListener() 
                        @Override
                        public void onClick(DialogInterface dialog, int which) 
                            Toast.makeText(MainActivity.this, "Press yes to logout", Toast.LENGTH_SHORT).show();
                        
                    ).show();
                    break;
                case R.id.signup:
                    Intent intent = new Intent(MainActivity.this, SignupActivity.class);

                    break;
                case R.id.share:
                    Toast.makeText(MainActivity.this, "Share", Toast.LENGTH_SHORT).show();
                case R.id.mail:
                    Toast.makeText(MainActivity.this, "Contact us", Toast.LENGTH_SHORT).show();
            
            drawerLayout.closeDrawer(GravityCompat.START);
            return true;
        
    );


private void startActivities(Intent intent) 
    startActivities(intent);



@Override
public void onBackPressed() 
    if (drawerLayout.isDrawerOpen(GravityCompat.START))
        drawerLayout.closeDrawer(GravityCompat.START);
    
    else 
        new AlertDialog.Builder(MainActivity.this)
                .setTitle("Exit")
                .setIcon(R.drawable.ic_logout)
                .setMessage("Sure! You want to exit?")
                .setPositiveButton("Yes", new DialogInterface.OnClickListener() 
                    @Override
                    public void onClick(DialogInterface dialog, int which) 
                        finishAffinity();
                    
                ).setNegativeButton("No", new DialogInterface.OnClickListener() 
            @Override
            public void onClick(DialogInterface dialog, int which) 
                dialog.dismiss();
            
        ).setNeutralButton("Other", new DialogInterface.OnClickListener() 
            @Override
            public void onClick(DialogInterface dialog, int which) 
                Toast.makeText(MainActivity.this, "Press yes to exit the app", Toast.LENGTH_SHORT).show();
            
        ).show();
    

【问题讨论】:

哪个 switch case 不适合你? 注册开关案例 【参考方案1】:

您忘记开始活动了。创建意图后添加一行

Intent intent = new Intent(MainActivity.this, SignupActivity.class);
startActivity(intent);

【讨论】:

想要在一项活动中添加底部和侧边导航,但如何?

】想要在一项活动中添加底部和侧边导航,但如何?【英文标题】:WanttoaddBottomandSidenavigationinoneactivitybutHow?【发布时间】:2019-10-0905:49:04【问题描述】:我想在LinkedIn等一项活动中添加底部导航和侧边导航抽屉。我尝试将底部导... 查看详情

如何在不使用片段的情况下访问所有活动中的导航抽屉?

】如何在不使用片段的情况下访问所有活动中的导航抽屉?【英文标题】:Howtoaccessnavigationdrawerinallactivitieswithoutusingfragments?【发布时间】:2014-03-2907:27:47【问题描述】:我想在所有活动中访问导航抽屉。我不想使用片段。相反... 查看详情

如何从导航抽屉启动活动?

】如何从导航抽屉启动活动?【英文标题】:HowtolaunchactivityfromNavigationDrawer?【发布时间】:2014-06-3020:25:10【问题描述】:所以我在这里搜索了有关导航抽屉的分配,当我被指向另一个人问题的答案中的教程时。我这样做了。我... 查看详情

如何在所有活动中使用Android Studio默认导航抽屉[重复]

】如何在所有活动中使用AndroidStudio默认导航抽屉[重复]【英文标题】:HowtouseAndroidStudiodefaultNavigationDrawerinallActivities[duplicate]【发布时间】:2016-03-1900:10:21【问题描述】:如何在其他Activity中使用Android默认Navigation?我不想使用返... 查看详情

在所有活动问题中显示导航抽屉

...题讨论】:您能分享您的代码以便我们提供帮助吗?无论如何,下面是可能 查看详情

在 React 导航 v5 中突出显示当前活动抽屉菜单

】在React导航v5中突出显示当前活动抽屉菜单【英文标题】:HighlightCurrentActiveDrawermenuinReactnavigationv5【发布时间】:2020-06-2215:47:16【问题描述】:我使用反应导航版本创建了一个自定义抽屉导航器:5.X,但是当前活动选项卡没有... 查看详情

在导航抽屉上调用不是片段活动的活动

】在导航抽屉上调用不是片段活动的活动【英文标题】:CallanActivitythatisnotafragmentactivityonNavigationDrawer【发布时间】:2022-01-1013:07:02【问题描述】:我是AndroidStudio的新手。我有一个导航抽屉,我试图调用一个不是片段活动的活动... 查看详情

如何在导航抽屉活动模板中的片段之间传递字符串变量

】如何在导航抽屉活动模板中的片段之间传递字符串变量【英文标题】:Howtopassstringvariablebetweenfragmentsinnavigationdraweractivitytemplate【发布时间】:2021-12-2807:49:04【问题描述】:告诉我如何在AndroidStudio4.0.1中的导航抽屉活动模板的... 查看详情

如何在另一个活动中从 uri 设置导航抽屉查看器的图像

】如何在另一个活动中从uri设置导航抽屉查看器的图像【英文标题】:Howtosetimageofnavigationdrawerviewerfromuriinanotheractivity【发布时间】:2018-06-0917:14:45【问题描述】:我如何设置导航抽屉中显示的用户图像和下载URIpublicclassUserProfileA... 查看详情

如何使用同一个应用制作抽屉式导航和底部导航?

】如何使用同一个应用制作抽屉式导航和底部导航?【英文标题】:Howtomakenavigationdrawerandbottomnavigationwiththesameapp?【发布时间】:2019-05-2506:02:15【问题描述】:我正在尝试在我的应用程序中使用导航抽屉和底栏导航。因此我首先... 查看详情

如何在主片段中单击按钮时打开导航抽屉?

】如何在主片段中单击按钮时打开导航抽屉?【英文标题】:Howtoopennavigationdraweronbuttonclickinmainfragment?【发布时间】:2013-10-2621:28:17【问题描述】:我制作了一个带有一个活动的应用程序,该活动使用导航抽屉打开许多不同的片... 查看详情

如何在颤动的底部导航栏中添加抽屉?

】如何在颤动的底部导航栏中添加抽屉?【英文标题】:Howtoadddrawerinbottomnavigationbarinflutter?【发布时间】:2020-06-0619:48:29【问题描述】:我想在用户点击第四个(more_vert)图标时显示一个抽屉,但我无法实现它。在我当前的实现... 查看详情

如何防止在导航抽屉中刷新 webview

】如何防止在导航抽屉中刷新webview【英文标题】:Howtopreventrefreshingofwebviewinnavigationdrawer【发布时间】:2016-09-2708:24:18【问题描述】:有一段时间我一直在使用viewpager在活动中显示webview页面,但现在我已经从viewpager更改为navigatio... 查看详情

如何在导航抽屉中制作另一个项目?

】如何在导航抽屉中制作另一个项目?【英文标题】:HowtomakeanotheriteminNavigationdrawer?【发布时间】:2022-01-0522:17:29【问题描述】:我尝试在基本导航抽屉活动模板中基于现有的项目创建另一个项目。我像其他人一样设置它,但在... 查看详情

如何在一个 android studio 项目中为两种不同类型的用户提供两种不同的导航抽屉活动?

】如何在一个androidstudio项目中为两种不同类型的用户提供两种不同的导航抽屉活动?【英文标题】:Howtohavetwodifferentnavigationdraweractivitiesinoneandroidstudioprojectfortwodifferenttypesofusers?【发布时间】:2020-01-2904:34:12【问题描述】:我有... 查看详情

想要使用片段从导航抽屉活动移动到另一个屏幕,以在所有屏幕上显示抽屉(代码片段)

...我的抽屉活动旁边添加片段,以便在整个应用程序中看到导航抽屉。我已尝试过stackoverflow和其他许多方法,但仍然没有成功。然后我必须从第一个片段移动到第二个片段,依此类推,直到需要导航抽屉。当我从我的活动移动到... 查看详情

如何将图标添加到导航抽屉中的项目

】如何将图标添加到导航抽屉中的项目【英文标题】:Howtoaddiconstoitemsinanavigationdrawer【发布时间】:2014-01-0704:14:06【问题描述】:我希望在我的导航抽屉中的项目旁边有图标,我设置如下:Titles=getResources().getStringArray(R.array.array1... 查看详情

如何在导航抽屉中的两个片段之间传递数据

】如何在导航抽屉中的两个片段之间传递数据【英文标题】:Howtocommunicatedatabetweentwofragmentsinanavigationdrawer【发布时间】:2014-05-2420:20:17【问题描述】:我有一个包含不同片段的导航抽屉(每个项目显示一个片段),我想将数据... 查看详情