NavigationView
谷歌在侧滑的MaterialDesign的一种规范,所以提出了一个新的控件,用来规范侧滑的基本样式。
注意:使用NavigationView,需要依赖项目:Design项目。同时还需要依赖recyclerView项目和CardView项目
MainActivity:
package com.example.dell.myapplication;
import android.app.Activity;
import android.os.Bundle;
import android.support.design.internal.NavigationMenu;
import android.support.v7.app.ActionBarActivity;
import android.support.v7.app.AppCompatActivity;
import android.view.Menu;
import android.view.MenuItem;
public class MainActivity extends ActionBarActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, 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.
int id = item.getItemId();
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
}
navigation_menu:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:id="@+id/action_gallery"
android:title="相册"
android:orderInCategory="100"
android:icon="@android:drawable/ic_menu_gallery"
/>
<item
android:id="@+id/action_details"
android:title="详情"
android:orderInCategory="100"
android:icon="@android:drawable/ic_menu_info_details"
/>
<item
android:id="@+id/action_about"
android:title="关于"
android:orderInCategory="100"
android:icon="@android:drawable/ic_menu_help"
/>
<item
android:id="@+id/action_music"
android:title="音樂"
android:orderInCategory="100"
android:icon="@android:drawable/ic_menu_more"
>
<menu >
<item
android:id="@+id/action_play"
android:title="播放"
android:icon="@android:drawable/ic_media_play"/>
<item
android:id="@+id/action_pause"
android:title="暫停"
android:icon="@android:drawable/ic_media_pause"/>
</menu>
</item>
</menu>
布局:
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity"
xmlns:app="http://schemas.android.com/apk/res-auto">
<!-- 内容部分 -->
<FrameLayout
android:id="@+id/fl"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
<!-- 菜单部分 -->
<android.support.design.widget.NavigationView
android:layout_gravity="start"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
app:menu="@menu/navigation_menu"
app:headerLayout="@layout/navigation_headerlayout"
android:background="@android:color/darker_gray"
/>
</android.support.v4.widget.DrawerLayout>
运行结果: