您的位置:首页 > 其它

Drawerlayout,ActionBarDrawetoggle,NavigationView使用

2016-07-13 09:49 316 查看
<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="false"
android:clipToPadding="false"
tools:openDrawer="start">

<android.support.design.widget.NavigationView
android:id="@+id/nav_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
android:fitsSystemWindows="true"
app:itemTextColor="@color/white"
app:itemIconTint="@color/white"
android:background="@color/switch_color"
app:headerLayout="@layout/nav_header_main"
app:menu="@menu/activity_main_drawer" />

</android.support.v4.widget.DrawerLayout>


<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">

<group android:checkableBehavior="none">
<item
android:id="@+id/nav_events"
android:icon="@drawable/icon_reminds"
android:title="Events" />
<item
android:id="@+id/nav_holidays"
android:icon="@drawable/icon_holidays"
android:title="Holidays" />
<item
android:id="@+id/nav_settings"
android:icon="@drawable/icon_setup"
android:title="Settings" />
</group>

</menu>


监听

DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(
this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close);
drawer.setDrawerListener(toggle);
toggle.syncState();
NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
navigationView.setNavigationItemSelectedListener(this);


选项监听:

@Override
public boolean onNavigationItemSelected(MenuItem item) {
// Handle navigation view item clicks here.
int id = item.getItemId();
if (id == R.id.nav_events) {
FlurryAgent.logEvent("EVENTS.ECKB");
Intent intent = new Intent(this, EventsActivity.class);
startActivity(intent);
} else if (id == R.id.nav_holidays) {
FlurryAgent.logEvent("festival.ECKB");
Intent intent = new Intent(this, HolidaysActivity.class);
startActivity(intent);
} else if (id == R.id.nav_settings) {
FlurryAgent.logEvent("Personal.ECKB");
Intent intent = new Intent(this, SettingActivity.class);
startActivity(intent);
}
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
drawer.closeDrawer(GravityCompat.START);
return true;
}


点击后根据选项判断在关闭
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: