Android 外包导航抽屉

Android Outsourcing Navigation Drawer

如何创建 class 来正确实例化抽屉式导航栏? 我想外包它,因为它有很多代码,而且总是一样的。 我已经尝试创建这样一个 class。问题是, 有这两种方法:

 @Override
    protected void onPostCreate(Bundle savedInstanceState) {
        super.onPostCreate(savedInstanceState);
        // Sync the toggle state after onRestoreInstanceState has occurred.
        mDrawerToggle.syncState();
    }

    @Override
    public void onConfigurationChanged(Configuration newConfig) {
        super.onConfigurationChanged(newConfig);
        mDrawerToggle.onConfigurationChanged(newConfig);
    }

在 activity 本身中被覆盖。此外,如果抽屉是 opened/closed,标题不会改变,最后用作打开按钮的箭头没有动画!

谢谢帮助!

首先androidstudio提供了创建抽屉Activity的模板。如果您是第一次创建项目,您可以使用:

或者如果你已经创建了你的项目并且你想创建一个抽屉Activity你可以这样找到它:

现在,如果您不喜欢上述方法,您可以创建一个抽象 activity class 将其命名为 DrawerActivity 并在其中进行所有初始化。然后在每个项目中你可以添加它并扩展它。那是一次性的工作。但是你必须仔细设计它,它必须足够通用并且满足你的通用要求。例如,它可以有一个 protected DrawerLayout 字段,所以当你扩展它时,你会在 setContentView of subclass activityonPostCreate 之类的所有东西之后初始化该字段onConfigurationChangedDrawerActivity(superclass).

中完成