一个导航抽屉中的多个菜单
Multiple menus in one navigation drawer
我正在尝试为不同的用户(来宾、会员、管理员)创建一个 Android 应用程序。我在我的应用程序中使用导航抽屉。我想知道我是否可以为每个用户创建一个菜单。
示例:
访客菜单可以包含三个项目:登录、注册、联系我们。
会员菜单可以有不同的项目:个人资料、注销。
管理员菜单可以有:管理帐户、添加新成员。
我希望所有这些 xml 菜单都在一个导航抽屉中 activity。我想根据用户的状态更改它们。可以吗?
在这里你可以做的是在你的字符串数组中为客人、会员、管理员制作 2 个不同的数组,或者你可以通过 arrayList 为它们制作。像 guestMenuList、memberMenuList、adminMenuList
像这样在你的 Activity 中输入条件
if(isGuest){
arrayList = guestMenuList
}else if(isMember){
arrayList = memberMenuList
}else if(){
arrayList = adminMenuList
}
并将此列表附加到抽屉适配器中。
是的,您可以为特定用户创建每个菜单。例如,如果您有以下菜单:guest_menu
、member_menu
和 admin_menu
。您可以像这样轻松地使用菜单:
// clear previous menu
navigationView.getMenu().clear();
switch (id) {
case guest:
navigationView.inflateMenu(R.menu.guest_menu);
break;
case member:
navigationView.inflateMenu(R.menu.member_menu);
break;
case admin:
navigationView.inflateMenu(R.menu.admin_menu);
break;
}
我正在尝试为不同的用户(来宾、会员、管理员)创建一个 Android 应用程序。我在我的应用程序中使用导航抽屉。我想知道我是否可以为每个用户创建一个菜单。
示例:
访客菜单可以包含三个项目:登录、注册、联系我们。
会员菜单可以有不同的项目:个人资料、注销。
管理员菜单可以有:管理帐户、添加新成员。
我希望所有这些 xml 菜单都在一个导航抽屉中 activity。我想根据用户的状态更改它们。可以吗?
在这里你可以做的是在你的字符串数组中为客人、会员、管理员制作 2 个不同的数组,或者你可以通过 arrayList 为它们制作。像 guestMenuList、memberMenuList、adminMenuList
像这样在你的 Activity 中输入条件
if(isGuest){
arrayList = guestMenuList
}else if(isMember){
arrayList = memberMenuList
}else if(){
arrayList = adminMenuList
}
并将此列表附加到抽屉适配器中。
是的,您可以为特定用户创建每个菜单。例如,如果您有以下菜单:guest_menu
、member_menu
和 admin_menu
。您可以像这样轻松地使用菜单:
// clear previous menu
navigationView.getMenu().clear();
switch (id) {
case guest:
navigationView.inflateMenu(R.menu.guest_menu);
break;
case member:
navigationView.inflateMenu(R.menu.member_menu);
break;
case admin:
navigationView.inflateMenu(R.menu.admin_menu);
break;
}