SlidingMenu-master
下载路径:
[SlidingMenu下载路径:](https://github.com/jfeinstein10/SlidingMenu)https://github.com/jfeinstein10/SlidingMenu
使用方法-android studio
- file–>new–>import moudle 导入文件的library文件夹
修改原有app 和导入的library 下面的build.gradle 文件项目
项目下面的build.gradle 中
classpath 'com.android.tools.build:gradle:2.1.2'
复制替换library下的build.gradle相应内容moudle之间的链接:file–>project structure –>app–>dependencies–>”+”–>moudle dependency–>选择library
常见属性:
设置侧滑菜单的位置,可选值:left , right , left_right
slidingmenu.setMode(SlidingMenu.LEFT_RIGHT);
设置触摸屏幕的方式,可选margin , content
slidingmenu.settouchmodeabove(slidingmenu.touchmode_margin);
根据dimen资源文件的Id来设置阴影的宽度
slidingmenu.setshadowwidthres(r.dimen.shadow_width);
设置滑动菜单阴影效果
slidingmenu.setshadowdrable(r.drawable.shadow);
设置滑动菜单视图的宽度
- 设置slidingmenu离屏幕的偏移量
slidingmenu.setbehindoffsetres(r.dimen.slidingmenu_offset)
- 设置滑动菜单的宽度
slidingmenu.setbehindwidth(r.dimen.slidingmenu_width);
- 设置slidingmenu离屏幕的偏移量
- 设置渐变效果的值
slidingmenu.setfadedegree(0.35f)
- 设置slidingmenu与下方视图的移动速度比 同时移动(1)取值(0-1)
slidingmenu.setbehindscrollscale(1.0f)
- 设置二级菜单的阴影效果
slidingmenu.setsecondaryshadowdrawable(r.drawable.shadow);
- 设置右边侧滑菜单
slidingmenu.setsetsecondarymenu(r.alyout.right_menu_frame);
- 为侧滑菜单设置布局
slidingmenu.setmenu(r.layout.leftmenu)
- 把滑动菜单添加进所有activity中,可选值sliding_sontent, sliding_window
slidingmenu.attachtoactivity(this,slidingmenu.sliding_content);
- 监听事件
- 事件打开时
public void setOnOpenListener(OnOpenListener listener) {
mOpenListener = listener;
} - 事件打开之后
public void setOnOpenedListener(OnOpenedListener listener) {
mViewAbove.setOnOpenedListener(listener);
} - 事件关闭时
public void setOnCloseListener(OnCloseListener listener) {
//mViewAbove.setOnCloseListener(listener);
mCloseListener = listener;
} - 事件关闭后
public void setOnClosedListener(OnClosedListener listener) {
mViewAbove.setOnClosedListener(listener);
}
- 事件打开时
gson
当Json字符串转换成Java对象时,转换成的是JsonObject,并不是你想要的Class类型的对象
使用gson 可以避免这种情况
对象–>gson
Gson gson = new Gson();
List<Persons> personsList = new ArrayList<Persons>();
for (int i = 0; i < 10; i++) {
Persons per = new Persons();
per.setAge(i);
per.setName("name" + i);
personsList.add(per);
}
String s = gson.toJson(personsList);//toJason()方法将对象转换成Json字符串
Log.d(TAG, "person的gson格式 " + s);
gson–>对象
List<Persons> perslist = gson.fromJson(s, new TypeToken<List<Persons>>() { //fromJson()方法将Json字符串转换成对象
}.getType());
for (Persons persons : perslist) {
Log.d(TAG,persons.toString());
}
`
`