分享NavigationView所有的活动? [英] Sharing NavigationView with all the Activities?
问题描述
我们如何分享抽屉
所有的活动?
How do we share Drawer
with all the activities?
在李斯特: onNavigationItemSelected
setNavigationItemSelectedListener
中我们可以得到 ID
和导航。我所寻找的是这样的:
In the lister: onNavigationItemSelected
of setNavigationItemSelectedListener
we can get the id
and navigate to it. What I am looking for is something like this:
private void initDrawerLayout() {
drawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
NavigationView navView = (NavigationView) findViewById(R.id.navigation_view);
navView.setNavigationItemSelectedListener(new NavigationView.OnNavigationItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(MenuItem menuItem) {
Intent intent;
int id = menuItem.getItemId();
switch(id) {
case R.id.home:
case R.id.drawer_home:
// call activity instead of adding/replacing fragment
return true;
case R.id.drawer_gallery:
// call activity instead of adding/replacing fragment
intent = new Intent(MainActivity.this, GalleryActivity.class);
startActivity(intent);
return true;
case R.id.drawer_about:
// call activity instead of adding/replacing fragment
intent = new Intent(MainActivity.this, AboutActivity.class);
startActivity(intent);
return true;
...
}
...
我知道我可以让所有的菜单项
添加/替换片段
,但随后处理碎片和内存管理一个很大的痛苦。
I know I can make all the menuItems
add/replace Fragment
, but then handling fragments and memory management is a big pain.
相反,我希望每个菜单项
选择/点击调用活动
。即每个 MainMenuItem
有活动
以及那些将举行片段与复杂的布局。
Instead I want each menuItem
select/click to invoke Activity
. i.e. each MainMenuItem
to have Activity
and those will hold fragments with complex layouts.
我想要做的就是让每个主菜单项目是活动
代替
片段
。
All I want to do is have each main menu item be an
Activity
instead of aFragment
.
和所有这些活动可以共享相同的 DrawerNavigation
。
And all these activities can share same DrawerNavigation
.
这是推荐的方法?或者,我们随时添加片段
为 NavigationDrawer
项目点击??
Is this the recommended way? Or do we always add Fragments
for NavigationDrawer
item clicks??
我应该添加 NavigationView
到 BaseActivity
,然后扩展的所有活动,从那里??
Should I add NavigationView
to BaseActivity
and then extend all activities from there??
推荐答案
我找到了答案使用这太回答
扩展才是正道。刚刚覆盖的setContentView以正确的方式...
这篇关于分享NavigationView所有的活动?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!