你的位置:首页 > 软件开发 > 操作系统 > Android Material Design:NavigationView抽屉导航菜单

Android Material Design:NavigationView抽屉导航菜单

发布时间:2015-12-23 14:00:16
需要添加的包: 测试代码:package com.zzw.navigationview;import android.app.Activity;import android.os.Bundle;import android.support.design.widget.Navi ...

Android Material Design:NavigationView抽屉导航菜单

Android Material Design:NavigationView抽屉导航菜单

 

需要添加的包:

Android Material Design:NavigationView抽屉导航菜单

 

测试代码:

package com.zzw.navigationview;import android.app.Activity;import android.os.Bundle;import android.support.design.widget.NavigationView;import android.support.design.widget.NavigationView.OnNavigationItemSelectedListener;import android.support.v4.view.GravityCompat;import android.support.v4.widget.DrawerLayout;import android.view.MenuItem;import android.view.View;import android.view.View.OnClickListener;import android.widget.ImageView;public class MainActivity extends Activity {  private DrawerLayout drawerLayout;  private ImageView imageView;  private NavigationView navigationView;  @Override  protected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.activity_main);    initView();    // navigationView选中Item处理    handNavigationView();        findViewById(R.id.button).setOnClickListener(new OnClickListener() {            @Override      public void onClick(View v) {                drawerLayout.openDrawer(GravityCompat.START);       }    });  }  private void handNavigationView() {    navigationView        .setNavigationItemSelectedListener(new OnNavigationItemSelectedListener() {          // 用于辨别此前是否已有选中条目          MenuItem preMenuItem;          @Override          public boolean onNavigationItemSelected(MenuItem menuItem) {            // 首先将选中条目变为选中状态            // 即checked为true,后关闭Drawer,以前选中的Item需要变为未选中状态            if (preMenuItem != null)              preMenuItem.setChecked(false);            menuItem.setChecked(true);            drawerLayout.closeDrawers();            preMenuItem = menuItem;            // 不同item对应不同图片            switch (menuItem.getItemId()) {            case R.id.navigation_item1:              imageView.setImageResource(R.mipmap.bg_one);              break;            case R.id.navigation_item2:              imageView.setImageResource(R.mipmap.bg_two);              break;            case R.id.navigation_item3:              imageView.setImageResource(R.mipmap.bg_three);              break;            case R.id.navigation_sub_item1:              imageView.setImageResource(R.mipmap.bg_four);              break;            case R.id.navigation_sub_item2:              imageView.setImageResource(R.mipmap.bg_five);              break;            case R.id.navigation_sub_item3:              imageView.setImageResource(R.mipmap.bg_default);              break;            }            return true;          }        });  }  private void initView() {    drawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);    imageView = (ImageView) findViewById(R.id.image);    navigationView = (NavigationView) findViewById(R.id.navigation);  }}

原标题:Android Material Design:NavigationView抽屉导航菜单

关键词:Android

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

可能感兴趣文章

我的浏览记录