所有活动中的Android导航抽屉[重复]
Posted
技术标签:
【中文标题】所有活动中的Android导航抽屉[重复]【英文标题】:Android Nav drawer in all activities [duplicate] 【发布时间】:2018-05-09 01:19:49 【问题描述】:如何在所有活动中显示我的导航抽屉
在 android studio 中创建一个新项目并有一个导航抽屉活动后,我运行它,但它没有显示在我的所有活动中。 (我没有添加任何代码,只是创建 活动并运行它)。我想知道如何显示导航 抽屉里的所有活动,有什么办法吗?
【问题讨论】:
在导航抽屉活动页面中使用片段 关注这里,可以成功实现这个https://***.com/questions/19451715/same-navigation-drawer-in-different-activities 【参考方案1】:您可以将导航抽屉与一个活动绑定。导航抽屉将仅显示在您创建的活动中。如果您想在所有应用程序中查看导航抽屉,您可以添加一帧布局并在其中添加片段以实现应用程序功能。该应用程序将是具有多个片段的单个 Activity。
以下是添加片段的代码。 :
Fragment fragment = new PlanetFragment();
Bundle args = new Bundle();
args.putInt(PlanetFragment.ARG_PLANET_NUMBER, position);
fragment.setArguments(args);
// Insert the fragment by replacing any existing fragment
FragmentManager fragmentManager = getFragmentManager();
fragmentManager.beginTransaction()
.replace(R.id.content_frame, fragment)
.commit();
更多详情:查看此链接。 https://developer.android.com/training/implementing-navigation/nav-drawer.html
编辑
无片段
您可以创建一个BaseActivity
,所有activity
都将扩展BaseActivity
。您需要将navigation drawer
与BaseActivity
绑定。这样,您就可以实现您想要的。
BaseActivity.Java
public class BaseActivity extends AppCompatActivity
@Override
protected void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
DrawerLayout fullView = (DrawerLayout)
getLayoutInflater().inflate(R.layout.activity_base, null);
FrameLayout activityContainer = (FrameLayout)
fullView.findViewById(R.id.activity_content);
getLayoutInflater().inflate(layoutResID, activityContainer, true);
super.setContentView(fullView);
【讨论】:
请在不使用 Fragments 的情况下告诉我 检查更新的答案 请详细告诉我 你检查过我更新的答案吗?我已经给出了您要求的代码 sn-p。 但是如何将它与导航抽屉绑定?以上是关于所有活动中的Android导航抽屉[重复]的主要内容,如果未能解决你的问题,请参考以下文章