Android开源组件SlidingMenu侧滑菜单使用介绍
现在很多android应用都有侧滑菜单,效果很不错。
github上有slidingmenu的开源库,使用起来很方便。
slidingmenu github地址:https://github.com/jfeinstein10/slidingmenu。github上说,sliding结合actionbarsherlock使用功能可以更丰富,actionbarsherlock github地址:https://github.com/jakewharton/actionbarsherlock
附csdn下载地址:
slidingmenu:
actionbarsherlock:
下面,介绍下slidingmenu的使用。
(1)从github上download zip到本地,解压缩,得到其中的一个文件夹,library。
(2)eclipse import existing android code into workspace。 点击项目右键 properties->android,可以看到,其 is library。
(3)在将使用slidingmenu的项目上点击右键 properties->android,library下将(2)导入的项目add进去。
(4)为保证slidingmenu库应用到项目中成功,必须保证项目使用的libs和slidingmenu库使用的libs版本一致,主要是指android-support-v4.jar。如果项目libs不存在或编译不通过,可以尝试新建libs文件夹,并置入android-support-v4.jar。在libs上右键->build path->use as source。一般可以解决。
(5)第(4)步之后,便可以在项目中直接使用slidingmenu。
java代码:
mainactivity:
package com.jj.testslidingmenu;
import com.jeremyfeinstein.slidingmenu.lib.slidingmenu;
import android.os.bundle;
import android.app.activity;
import android.view.keyevent;
import android.view.menu;
public class mainactivity extends activity {
slidingmenu slidingmenu;
@override
protected void oncreate(bundle savedinstancestate) {
super.oncreate(savedinstancestate);
setcontentview(r.layout.activity_main);
slidingmenu = new slidingmenu(this);
slidingmenu.setmode(slidingmenu.left);
slidingmenu.settouchmodeabove(slidingmenu.touchmode_fullscreen);
slidingmenu.setbehindoffsetres(r.dimen.slidingmenu_offset);
slidingmenu.setmenu(r.layout.slidingmenu);
slidingmenu.attachtoactivity(this, slidingmenu.sliding_content);
}
@override
public boolean onkeydown(int key, keyevent event){
switch (key) {
case keyevent.keycode_menu:
slidingmenu.toggle(true);
break;
default:
break;
}
return false;
}
}
xml布局代码:
layout/slidingmenu.xml:
<?xml version="1.0" encoding="utf-8"?>
<linearlayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="#ff999999">
<com.jeremyfeinstein.slidingmenu.lib.slidingmenu
android:id="@+id/slidingmenu"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text = "click me"/>
</com.jeremyfeinstein.slidingmenu.lib.slidingmenu>
</linearlayout>
对于slidingmenu常用的一些属性设置记录如下:
menu.setmode(slidingmenu.left);//设置左滑菜单
menu.settouchmodeabove(slidingmenu.touchmode_fullscreen);//设置滑动的屏幕范围,该设置为全屏区域都可以滑动
menu.setshadowdrawable(r.drawable.shadow);//设置阴影图片
menu.setshadowwidthres(r.dimen.shadow_width);//设置阴影图片的宽度
menu.setbehindoffsetres(r.dimen.slidingmenu_offset);//slidingmenu划出时主页面显示的剩余宽度
menu.setbehindwidth(400);//设置slidingmenu菜单的宽度
menu.setfadedegree(0.35f);//slidingmenu滑动时的渐变程度
menu.attachtoactivity(this, slidingmenu.sliding_content);//使slidingmenu附加在activity上
menu.setmenu(r.layout.menu_layout);//设置menu的布局文件
menu.toggle();//动态判断自动关闭或开启slidingmenu
menu.showmenu();//显示slidingmenu
menu.showcontent();//显示内容
menu.setonopenlistener(onopenlistener);//监听slidingmenu打开
menu.setonopenedlistener(onopenedlistener);监听slidingmenu打开后
menu.oncloselistener(onclosedlistener);//监听slidingmenu关闭时事件
menu.onclosedlistener(onclosedlistener);//监听slidingmenu关闭后事件
左右都可以划出slidingmenu菜单只需要设置
menu.setmode(slidingmenu.left_right);属性,然后设置右侧菜单的布局文件
menu.setsecondarymenu(r.layout.menu_fram2);//设置右侧菜单
menu.setsecondaryshadowdrawable(r.drawable.shadowright);//右侧菜单的阴影图片
推荐阅读
-
Android使用DrawerLayout实现侧滑菜单效果
-
Android使用DrawerLayout实现双向侧滑菜单
-
Android侧滑菜单控件DrawerLayout使用详解
-
android侧滑菜单控件DrawerLayout使用方法详解
-
Android开源组件SlidingMenu侧滑菜单使用介绍
-
Android使用DrawerLayout实现仿QQ双向侧滑菜单
-
Android使用DrawerLayout实现仿QQ双向侧滑菜单
-
Android开源组件SlidingMenu侧滑菜单使用介绍
-
Android使用DrawerLayout实现双向侧滑菜单
-
Android侧滑菜单控件DrawerLayout使用详解