在github中有一个非常火的开源库slidingmenu,谷歌、印象笔记等很多应用都使用了这个库,因此,这里我也使用slidingmenu来实现侧滑菜单。
首先要在自己的项目中引入slidingmenu的库,引入方法参照http://blog.csdn.net/wjwj1203/article/details/30560521 ,需要注意的是slidingmenu的库里已经存在android-support-v4.jar这个包了,如果自己的项目中包含此包,需要将其删除,因为不删除自己项目中的android-support-v4.jar包,运行app的时候会报错。
将slidingmenu库引入后,接下来就可以使用了。
(1)在activity中的onCreate方法中直接引用侧滑菜单的方法即可,代码如下:
package com.jason.splishmenu;
import com.jeremyfeinstein.slidingmenu.lib.SlidingMenu;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
/*
* 基本功能:主页面显示侧滑菜单
* 创建:Jason
*/
public class MainActivity extends Activity {
private SlidingMenu slidingMenu = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 设置抽屉菜单
slidingMenu = new SlidingMenu(this);
// 设置滑动菜单的属性值
// 设置抽屉菜单
slidingMenu.setShadowWidthRes(R.dimen.shadow_width);
slidingMenu.setShadowDrawable(R.drawable.shadow);// 定义过度效果
slidingMenu.setMode(SlidingMenu.LEFT_RIGHT);// 设置左右均可滑出菜单
// slidingMenu.setMode(SlidingMenu.LEFT);//设置左侧可滑出菜单
slidingMenu.setMenu(R.layout.slidingmenu_left);// 左边菜单布局
slidingMenu.setSecondaryMenu(R.layout.slidingmenu_left);// 右边菜单布局
slidingMenu.setBehindOffsetRes(R.dimen.slidingmenu_offset);// 设置滑出菜单的宽度
// slidingMenu.setTouchModeAbove(SlidingMenu.TOUCHMODE_MARGIN); //
// 触摸边界拖出菜单,否则不弹出侧滑菜单
slidingMenu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN); // 滑动屏幕即可弹出侧滑菜单
slidingMenu.setFadeDegree(0.25f);
// 将抽屉菜单与主页面关联起来
slidingMenu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT);
}
@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;
}
}
(2)新建过度效果的资源文件shadow.xml
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<gradient
android:endColor="#33000000"
android:centerColor="#11000000"
<pre class="html" name="code"><?xml version="1.0" encoding="utf-8"?>
(3)新建侧滑菜单的布局文件slidingmenu_left.xml,这里设置作用均有侧滑菜单,左右使用的是同一个布局文件,实际使用的时候,根据需求,分别给左侧滑和右侧滑建立布局文件即可。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@android:color/darker_gray"
android:orientation="vertical" >
</LinearLayout>
简单三步,侧滑侧滑菜单已经可以使用了。