下载项目地址:https://github.com/jfeinstein10/SlidingMenu
首先根据地址将代码下载到本地
导入该libary到工程:
1,File—>New->Import Module->根据路径查找,导入
2,导入第三方的libary时,建议导入时修改libray的名字,见名知意,此处改名为SlidingMenuLibrary
3,SlidingMenuLibrary ->src -> build.gradle-> dependencies {
classpath ‘com.android.tools.build:gradle:1.0.0’(改为1.0.0)
}
4, compileSdkVersion 19(sdk中build-tools找已存在的)
buildToolsVersion “20.0.0”(sdk中platforms找已存在的)
5,File->Project Structure->app->Dependencies->右上角+ ->ok
MainActivity中的代码:
package com.myapplication.slidingmenu;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import com.jeremyfeinstein.slidingmenu.lib.SlidingMenu;
/**
* 侧滑菜单的基本使用
* 1,创建侧滑菜单
* 2,根据相应的需求 设置侧滑的属性
*/
public class MainActivity extends AppCompatActivity {
private SlidingMenu slidingMenu;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//创建侧滑菜单
slidingMenu = new SlidingMenu(this);
//设置菜单划出的方向
//(SlidingMenu.LEFT左侧 ,SlidingMenu.RIGHT右侧,SlidingMenu.LEFT_RIGHT左右都可以)
slidingMenu.setMode(SlidingMenu.LEFT_RIGHT);
//设置菜单显示的布局
slidingMenu.setMenu(R.layout.left_menu);
slidingMenu.setSecondaryMenu(R.layout.right_menu);
//设置菜单显示的宽度
slidingMenu.setBehindWidth(200);
//设置划出来的方式
slidingMenu.setTouchModeAbove(SlidingMenu.TOUCHMODE_MARGIN);
//绑定activity,设置菜单划出来的高度:全屏,actionBar下面
slidingMenu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT);
}
}
左侧布局文件
<?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="#ffff00"
>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#ff00ff"
android:text="按钮一"
/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#00ff00"
android:text="按钮二"
/>
</LinearLayout>
右侧布局代码:
<?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:background="#ff00ff"
android:orientation="vertical"
>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="右侧按钮"
/>
</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);//右侧菜单的阴影图片
本文介绍如何使用 SlidingMenu 库实现 Android 应用的侧滑菜单功能。包括库的下载、导入步骤及配置方法,并提供 MainActivity 示例代码与布局文件,展示了基本的侧滑菜单设置。
503

被折叠的 条评论
为什么被折叠?



