# SlidingMenu_ohos
**本项目是基于开源项目 SlidingMenu 进行鸿蒙化的移植和开发的,可以通过项目标签以及github地址( https://github.com/jfeinstein10/SlidingMenu )追踪到原安卓项目版本**
#### 项目介绍
- 项目名称:滑动菜单
- 所属系列:鸿蒙的第三方组件适配移植
- 功能:支持滑动菜单展示/隐藏
- 项目移植状态:完成
- 调用差异:无
- 开发版本:DevEco Studio 3.0 Beta2, SDK 5.0
- 项目作者和维护人:徐泽鑫
- 邮箱:isrc_hm@iscas.ac.cn
- 原项目Doc地址:https://github.com/jfeinstein10/SlidingMenu
#### 项目介绍
- 编程语言:Java
- SlidingMenu是一个滑动菜单组件,当用户使用时,菜单栏隐藏在手机屏幕的左侧或右侧,
通过左滑或者右滑出现导航菜单栏,既节省了主屏幕的空间,也方便用户操作,在很多主流APP中都有广泛的应用。
#### 安装教程
1. 下载har包library-debug.har。
2. 启动 DevEco Studio,将下载的har包,导入工程目录“entry->libs”下。
3. 在moudle级别下的build.gradle文件中添加依赖,在dependences标签中增加对libs目录下jar包的引用。
```
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar', '*.har'])
……
}
```
在sdk5,DevEco Studio2.1 beta3下项目可直接运行
如无法运行,删除项目.gradle,.idea,build,gradle,build.gradle文件,
并依据自己的版本创建新项目,将新项目的对应文件复制到根目录下
#### 使用说明
1. 新建一个项目,在entry下的MainAbilitySlice中通过import com.jeremyfeinstein.slidingmenu.lib.SlidingMenu即可对滑动菜单进行设置和使用。
使用样例如下:
public class MainAbilitySlice extends AbilitySlice {
@Override
protected void onStart(Intent intent) {
super.onStart(intent);
//初始化一个directionalLayout(后面attachToAbility会用到,用来获取页面展示的根节点)
DirectionalLayout directionalLayout=(DirectionalLayoutLayoutScatter.getInstance(this).parse(ResourceTable.Layout_activity_main,null,false);
//把directionalLayout设置为Ability的主要UI布局
setUIContent(directionalLayout);
SlidingMenu slidingMenu = null;
try {
//初始化SlidingMenu实例
slidingMenu = new SlidingMenu(this);
} catch (IOException e) {
e.printStackTrace();
} catch (NotExistException e) {
e.printStackTrace();
}
//设置菜单放置位置
slidingMenu.setMode(SlidingMenu.LEFT);
//设置滑动的触发范围
slidingMenu.setTouchScale(100);
//设置菜单布局
slidingMenu.setMenu(ResourceTable.Layout_layout_left_menu);
//设置菜单最大宽度
slidingMenu.setMenuWidth(800);
try {
//关联Activity
slidingMenu.attachToAbility(directionalLayout this, SlidingMenu.SLIDING_CONTENT);
} catch (NotExistException e) {
e.printStackTrace();
} catch (WrongTypeException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
#### 版本迭代
- v2.4.0.1
#### 版权和许可信息
- SlidingMenu_ohos经过[Apache License, version 2.0](http://www.apache.org/licenses/LICENSE-2.0)授权许可。