Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/319.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使我的ActionBar切换按钮在我的应用程序中工作?_Java_Android_Android Layout_Android Actionbar_Android Togglebutton - Fatal编程技术网

Java 如何使我的ActionBar切换按钮在我的应用程序中工作?

Java 如何使我的ActionBar切换按钮在我的应用程序中工作?,java,android,android-layout,android-actionbar,android-togglebutton,Java,Android,Android Layout,Android Actionbar,Android Togglebutton,这是我为MainActivity中的切换按钮编写的代码 mDrawerToggle = new ActionBarDrawerToggle(this, mDrawerLayout, R.drawable.humberg, //nav menu toggle icon R.string.app_name, // nav drawer open - description for accessibility R

这是我为MainActivity中的切换按钮编写的代码

         mDrawerToggle = new ActionBarDrawerToggle(this, mDrawerLayout,
            R.drawable.humberg, //nav menu toggle icon
            R.string.app_name, // nav drawer open - description for accessibility
            R.string.app_name // nav drawer close - description for accessibility
    ) {
        public void onDrawerClosed(View view) {
            getActionBar().setTitle(mTitle);
            // calling onPrepareOptionsMenu() to show action bar icons
            invalidateOptionsMenu();
        }

        public void onDrawerOpened(View drawerView) {
            getActionBar().setTitle(mDrawerTitle);
            // calling onPrepareOptionsMenu() to hide action bar icons
            invalidateOptionsMenu();
        }
    };
    mDrawerLayout.setDrawerListener(mDrawerToggle);
    // Drawer Item click listeners
    mDrawerList.setOnItemClickListener(new AdapterView.OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            selectItemFromDrawer(position);
        }
mDrawerToggle=newactionbardrawertoggle(这是mDrawerLayout,
R.drawable.humberg,//导航菜单切换图标
R.string.app_name,//导航抽屉打开-可访问性说明
R.string.app_name//nav抽屉关闭-可访问性说明
) {
公共无效onDrawerClosed(视图){
getActionBar().setTitle(mTitle);
//调用onPrepareOptions菜单()以显示操作栏图标
无效操作菜单();
}
打开图纸上的公共空白(视图抽屉视图){
getActionBar().setTitle(mDrawerTitle);
//调用onPrepareOptions菜单()隐藏操作栏图标
无效操作菜单();
}
};
mDrawerLayout.setDrawerListener(mDrawerToggle);
//抽屉项单击侦听器
mDrawerList.setOnItemClickListener(新的AdapterView.OnItemClickListener(){
@凌驾
public void onItemClick(AdapterView父对象、视图、整型位置、长id){
从抽屉中选择项目(位置);
}
当我运行我的应用程序时,我收到了一个错误,很遗憾,你的应用程序已经停止。。
});

您的问题来自onPrepareOptionMenu()方法,实际上您并没有向“活动”膨胀任何菜单文件,在设置“显示”或“隐藏”菜单项之前,请使用此方法膨胀自定义菜单文件。
ps:sr for my english

错误说明:
RelativeLayout
不能强制转换为
抽屉布局
这是一个
类别例外

指:

抛出以指示代码试图将对象强制转换为 它不是其实例的子类

或者,表示您正在声明某种类型的变量/对象,并将其分配给已定义的另一种类型