Android 在操作栏上实现导航抽屉

Android 在操作栏上实现导航抽屉,android,android-studio,navigation-drawer,Android,Android Studio,Navigation Drawer,伙计们,我正在实现操作栏上的导航抽屉 我收到一个错误,错误是 “android.support.v7.widget.Toolbar,int,int”中的“ActionBarDrawertogleandroid.app.Activity,android.support.v4.widget.DrawerLayout,android.support.v7.widget.Toolbar,int,int”不能应用于“com.example.samsung.getstart.MainActivity,and

伙计们,我正在实现操作栏上的导航抽屉 我收到一个错误,错误是

“android.support.v7.widget.Toolbar,int,int”中的“ActionBarDrawertogleandroid.app.Activity,android.support.v4.widget.DrawerLayout,android.support.v7.widget.Toolbar,int,int”不能应用于“com.example.samsung.getstart.MainActivity,android.support.v4.widget.DrawerLayout,int,int,int”

我的代码是

private DrawerLayout.DrawerListener createDrawerToggle() {
    mDrawerToggle = new ActionBarDrawerToggle(this, mDrawerLayout, R.drawable.ic_drawer, R.string.drawer_open, R.string.drawer_close) {

        @Override
        public void onDrawerClosed(View view) {
            super.onDrawerClosed(view);
        }

        @Override
        public void onDrawerOpened(View drawerView) {
            super.onDrawerOpened(drawerView);
        }

        @Override
        public void onDrawerStateChanged(int state) {
        }
    };
    return mDrawerToggle;
}

请帮助我解决此问题,因为您使用的是不同版本的抽屉布局。 删除

import android.support.v4.widget.DrawerLayout;

android再次导入。

问题是行代码:

mDrawerToggle = new ActionBarDrawerToggle(this, mDrawerLayout, R.drawable.ic_drawer, R.string.drawer_open, R.string.drawer_close) 
{
}
您已经导入了android.support.v7.app.ActionBarDrawerToggle,因此您应该将构造函数用作:

ActionBarDrawerToggle(Activity activity, DrawerLayout drawerLayout, int openDrawerContentDescRes, int closeDrawerContentDescRes) 

or 

ActionBarDrawerToggle(Activity activity, DrawerLayout drawerLayout, Toolbar toolbar, int openDrawerContentDescRes, int closeDrawerContentDescRes) 
对于您的情况,只需从实例化中删除R.drawable.ic_drawer

否则,您可以使用V4更改ActionBarDrawerToggle的导入,但它已被弃用


希望这有帮助

扩展ActionBarActivity或FragmentActivity not Activity请共享您的MainActivity,这意味着您的参数都乱了。将工具栏传递到传递可绘图工具的位置