汉堡不起作用

时间:2017-07-10 23:13:55

标签: java android navigation-drawer hamburger-menu

我设法创造了一个抽屉并且有汉堡包标志,但是当敲击时汉堡包没有工作。另外,我如何更改代码,以便我的应用程序具有透明通知栏,以便颜色相同(或者最好稍暗),并且可以看到状态栏中打开的应用程序抽屉。这样的事情:Transparent status bar

FirstActivity.java:

public class FirstActivity extends AppCompatActivity {

DrawerLayout mDrawer;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_me_clicked);
    Toolbar toolbar= (Toolbar) findViewById(R.id.toolbar);
    setSupportActionBar(toolbar);
    getSupportActionBar().setDisplayShowTitleEnabled(false);    //removes the package name from toolbar

//        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
//            Window w = getWindow(); // in Activity's onCreate() for instance          //Integration of app into status bar
//            w.setFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS, WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);
//        }

    // These lines are needed to display the top-left hamburger button
    getSupportActionBar().setHomeButtonEnabled(true);
    getSupportActionBar().setDisplayHomeAsUpEnabled(true);


    // Make the hamburger button work
    mDrawer = (DrawerLayout) findViewById(R.id.DL);

    ActionBarDrawerToggle mDrawerToggle = new ActionBarDrawerToggle(this,mDrawer,R.string.app_name,R.string.app_name){
        @Override
        public void onDrawerClosed(View drawerView) {
        }

        @Override
        public void onDrawerOpened(View drawerView) {
        }
    };
    mDrawer.addDrawerListener(mDrawerToggle);
    mDrawerToggle.syncState();

    // toasts the message when ListView item is clicked
    ListView mDrawerListView = (ListView) findViewById(R.id.left_drawer);
    mDrawerListView.setOnItemClickListener(new ListView.OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            String drawerstring = ("Menu Item at position " + position + " clicked.");
            mDrawer.closeDrawer(GravityCompat.START);
            Toast.makeText(getApplicationContext(),drawerstring,Toast.LENGTH_SHORT).show();
        }
    });

}

1 个答案:

答案 0 :(得分:0)

您必须覆盖onOptionsItemSelected并处理主项以打开抽屉。它没有为你完成,因为Android不知道你正在使用那个按钮(家庭?回来?汉堡?还有别的什么?)。如果您想要委托它,ActionDrawerToggle知道如何处理它。

相关问题