2017-07-29 129 views
1

在Android Studio中,对于导航抽屉活动,有一个三行符号,一旦您点击它,导航抽屉菜单就会从屏幕左侧出现。这个三线符号称为什么?导航抽屉活动Android Studio

另外,你如何得到这个三行符号出现在屏幕上?

请帮忙!

private ActionBarDrawerToggle toggle; 
private DrawerLayout drawer; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_side_options); 

    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
    setSupportActionBar(toolbar); 

    FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); 
    fab.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 
      Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG) 
        .setAction("Action", null).show(); 
     } 
    }); 

    drawer = (DrawerLayout) findViewById(R.id.drawer_layout); 
    toggle = new ActionBarDrawerToggle(
      this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close); 

    drawer.addDrawerListener(toggle); 
    toggle.syncState(); 
    getSupportActionBar().setDisplayHomeAsUpEnabled(true); 

    //getSupportActionBar().setDisplayHomeAsUpEnabled(true); 
    //getSupportActionBar().setHomeButtonEnabled(true); 
    //getSupportActionBar().setHomeAsUpIndicator(R.drawable.ic_menu_camera); 

    NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view); 
    navigationView.setNavigationItemSelectedListener(this); 
} 

@Override 
public void onBackPressed() { 
    drawer = (DrawerLayout) findViewById(R.id.drawer_layout); 
    if (drawer.isDrawerOpen(GravityCompat.START)) { 
     drawer.closeDrawer(GravityCompat.START); 
    } else { 
     super.onBackPressed(); 
    } 
} 

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    // Inflate the menu; this adds items to the action bar if it is present. 
    getMenuInflater().inflate(R.menu.side_options, menu); 
    return true; 
} 

@Override 
public boolean onOptionsItemSelected(MenuItem item) { 
    // Handle action bar item clicks here. The action bar will 
    // automatically handle clicks on the Home/Up button, so long 
    // as you specify a parent activity in AndroidManifest.xml. 
    if (toggle.onOptionsItemSelected(item)) { 
     return true; 
    } 

    int id = item.getItemId(); 

    //noinspection SimplifiableIfStatement 
    /* if (id == R.id.action_settings) { 
     return true; 
    } */ 

    return super.onOptionsItemSelected(item); 
} 
+0

HamBurger icon !!! –

回答

0

三线符号称为汉堡图标

0
private DrawerLayout mdrawerLayout; 
    private ActionBarDrawerToggle mToogle; 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_user_account); 
mdrawerLayout = (DrawerLayout) findViewById(R.id.drawer_Layout); 
     mToogle = new ActionBarDrawerToggle(this, mdrawerLayout, R.string.navigation_drawer_open, R.string.navigation_drawer_close); 

     mdrawerLayout.addDrawerListener(mToogle); 
     mToogle.syncState(); 

     getSupportActionBar().setDisplayHomeAsUpEnabled(true); 
    } 

    public boolean onOptionsItemSelected(MenuItem Item){ 

     if (mToogle.onOptionsItemSelected(Item)) { 

      return true; 
     } 

     return super.onOptionsItemSelected(Item); 

      } 

添加到您的Java文件,这

+0

我已经有了这段代码,但它仍然不起作用......换句话说,图标仍然不显示。 –

0

添加以下代码来获取图标

ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(
        this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close); 
      drawer.setDrawerListener(toggle); 
      toggle.syncState(); 

,或者你也可以做如下

right click on package name>New>Activity>Naviagation Drawer Activity 
+0

Sunil P,我已经有这个代码片段,但图标仍然没有出现... –

+0

好吧去我的第二个解决方案,图标将自动出现 –

+0

这就是为什么我原本完成(右键单击包... )。这样做后,您分享的代码已经提供,作为默认代码的一部分。如果这是有道理的...... –