SlidingMenu使用:
Java代码构造:
SlidingMenu构造方式:
SlidingMenumenu=new SlidingMenu(context);
+++++++++++++++++++++++++++++++++++++++++++
SlidingMenumenu=new SlidingMenu(this);
//设置侧滑的菜单的布局文件
menu.setMenu(R.layout.sliding_left);
//设置侧滑的方式
menu.setMode(SlidingMenu.LEFT_RIGHT);
//设置右侧菜单
menu.setSecondaryMenu(R.layout.sliding_right);
//设置窗口剩余的宽度
//menu.setBehindOffset(200);
menu.setBehindWidth(150);
//设置侧滑的屏幕的位置
menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);
//把侧滑菜单添加到活动窗口上
//menu.attachToActivity(this,SlidingMenu.SLIDING_CONTENT);
menu.attachToActivity(this,SlidingMenu.SLIDING_WINDOW);
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++
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有两个监听,简单的来说,对于menuclose事件,一个是when,一个是after
menu.OnClosedListener(OnClosedListener);//监听slidingmenu关闭时事件
menu.OnClosedListener(OnClosedListener);//监听slidingmenu关闭后事件
左右都可以划出SlidingMenu菜单只需要设置
menu.setMode(SlidingMenu.LEFT_RIGHT);属性,然后设置右侧菜单的布局文件
menu.setSecondaryShadowDrawable(R.drawable.shadowright);//右侧菜单的阴影图片
设置SlidingMenu属性
sm = getSlidingMenu();
//如果只显示左侧菜单就是用LEFT,右侧就RIGHT,左右都支持就LEFT_RIGHT
sm.setMode(SlidingMenu.LEFT_RIGHT);//设置菜单滑动模式,菜单是出现在左侧还是右侧,还是左右两侧都有
sm.setShadowDrawable(R.drawable.shadow);//设置阴影的图片资源
sm.setShadowWidthRes(R.dimen.shadow_width);//设置阴影图片的宽度
//sm.setBehindWidth(200);//设置菜单的宽
sm.setBehindOffsetRes(R.dimen.slidingmenu_offset);//SlidingMenu划出时主页面显示的剩余宽度
sm.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);//设置滑动的区域
支持右侧划出菜单:
//SlidingMenu可以同时支持划出左右两侧的菜单,互不冲突,而且动画优美,体验良好。
sm.setSecondaryMenu(R.layout.menu_frame2);//设置右侧菜单
sm.setSecondaryShadowDrawable(R.drawable.shadowright);//设置右侧菜单阴影的图片资源
//右侧SlidingMenu的Fragment
getSupportFragmentManager().beginTransaction().replace(R.id.menu_frame2, newSampleListFragment()).commit();
slidingMenu= getSlidingMenu();
//设置是左滑还是右滑,还是左右都可以滑
slidingMenu.setMode(SlidingMenu.LEFT_RIGHT);
//设置阴影宽度
slidingMenu.setShadowWidth(getWindowManager().getDefaultDisplay().getWidth() /40);
//设置左菜单阴影图片
slidingMenu.setShadowDrawable(R.drawable.shadow);
//设置右菜单阴影图片
slidingMenu.setSecondaryShadowDrawable(R.drawable.right_shadow);
//设置菜单占屏幕的比例
slidingMenu.setBehindOffset(getWindowManager().getDefaultDisplay().getWidth() /5);
//设置滑动时菜单的是否淡入淡出
slidingMenu.setFadeEnabled(true);
//设置淡入淡出的比例
slidingMenu.setFadeDegree(0.4f);
//设置滑动时拖拽效果
slidingMenu.setBehindScrollScale(0);
//设置要使菜单滑动,触碰屏幕的范围
slidingMenu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);
XML布局方式:
×××××××××××××××××××××××××××××××××××××××××
Gson:
Gson使用步骤:
1. 借助在线json格式化工具,查看返回的json字符串的格式
在线json格式化工具:
http://tool.oschina.net/codeformat/json
json实体数据封装的工具
http://www.bejson.com/
===================================================================================
2. 根据json字符串的格式,构造相对应的实体类Bean;
public class Employee {
private String empID;
private String name;
private booleanpermanent;
private Addressaddress;
privateList<String> phoneNumbers;
private String role;
private String[]cities;
private Propertiesproperties;
public StringgetEmpID() {
return empID;
}
public voidsetEmpID(String empID) {
this.empID = empID;
}
public String getName(){
return name;
}
public voidsetName(String name) {
this.name = name;
}
public booleanisPermanent() {
return permanent;
}
public voidsetPermanent(boolean permanent) {
this.permanent =permanent;
}
public AddressgetAddress() {
return address;
}
public voidsetAddress(Address address) {
this.address =address;
}
publicList<String> getPhoneNumbers() {
returnphoneNumbers;
}
public voidsetPhoneNumbers(List<String> phoneNumbers) {
this.phoneNumbers =phoneNumbers;
}
public String getRole(){
return role;
}
public voidsetRole(String role) {
this.role = role;
}
public String[]getCities() {
return cities;
}
public voidsetCities(String[] cities) {
this.cities =cities;
}
public PropertiesgetProperties() {
return properties;
}
public voidsetProperties(Properties properties) {
this.properties =properties;
}
public Employee() {
super();
// TODOAuto-generated constructor stub
}
public Employee(StringempID, String name, boolean permanent,
Addressaddress, List<String> phoneNumbers, String role,
String[]cities, Properties properties) {
super();
this.empID = empID;
this.name = name;
this.permanent =permanent;
this.address =address;
this.phoneNumbers =phoneNumbers;
this.role = role;
this.cities =cities;
this.properties =properties;
}
public static classAddress {
private Stringstreet;
private Stringcity;
private Stringzipcode;
public StringgetStreet() {
return street;
}
public voidsetStreet(String street) {
this.street =street;
}
public StringgetCity() {
return city;
}
public voidsetCity(String city) {
this.city =city;
}
public StringgetZipcode() {
return zipcode;
}
public voidsetZipcode(String zipcode) {
this.zipcode =zipcode;
}
publicAddress(String street, String city, String zipcode) {
super();
this.street =street;</