SlidingMenu(侧滑菜单)

PS:看了9年的小说,自己开始动手写了一本,请各位猿们动动手指,点击下,有起点账号的可以收藏下!!《武意长存》


现如今android应用经常使用到侧滑菜单,而SlidingMenu则帮我们实现了这些功能。首先我们得从GitHub上下载该开源库,然后把slidingmenulibrary导入eclipse中,具体的导入的方法我想大家都不陌生,这里就不写详细步骤了。

然后我们新建一个工程项目,右键项目,然后单击properties,选择Android,在单击右边的Add按钮,添加slidingmenu项目


然后让想要展示侧滑菜单的Activity继承SlidingFragmentActivity,具体代码如下

public class MainActivity extends SlidingFragmentActivity {
	private SlidingMenu sm;
	private FragmentManager fm;

	/**
     * 1 得到滑动菜单
     * 2 设置滑动菜单是在左边出来还是右边出来
     * 3 设置滑动菜单出来之后,内容页,显示的剩余宽度
     * 4 设置滑动菜单的阴影 设置阴影,阴影需要在开始的时候,特别暗,慢慢的变淡
     * 5 设置阴影的宽度
     * 6 设置滑动菜单的范围
     */
	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		requestWindowFeature(Window.FEATURE_NO_TITLE);
		setBehindContentView(R.layout.menu_sliding);		//设置侧滑菜单的布局
		setContentView(R.layout.content);
		
		fm = getSupportFragmentManager();		
		
		sm = getSlidingMenu();
		//设置滑动菜单是在左边出来还是右边出来
		//参数可以设置左边LEFT,也可以设置右边RIGHT ,还能设置左右LEFT_RIGHT
		sm.setMode(SlidingMenu.LEFT);
		//设置滑动菜单出来之后,内容页,显示的剩余宽度
		sm.setBehindOffsetRes(R.dimen.slidingmenu_offset);
		//设置滑动菜单的阴影 设置阴影,阴影需要在开始的时候,特别暗,慢慢的变淡
		sm.setShadowDrawable(R.drawable.shadow);
		//设置阴影的宽度
		sm.setShadowWidth(R.dimen.shadow_width);

		//设置滑动菜单的触摸范围
		//  SlidingMenu.TOUCHMODE_FULLSCREEN 可以全屏滑动
		// SlidingMenu.TOUCHMODE_MARGIN 只能在边沿滑动
		//  SlidingMenu.TOUCHMODE_NONE 不能滑动
		sm.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);
		
		LeftMenuFragment lmFragment = new LeftMenuFragment();
		changeFragment(fm, R.id.menu_left, lmFragment, "leftMenu");
		
		HomeFragment homeFragment = new HomeFragment();
		changeFragment(fm, R.id.frame_content, homeFragment, "Home");
	}
		
	private void changeFragment(FragmentManager fm, int contentId, Fragment fragment, String tag) {
		FragmentTransaction  ft = fm.beginTransaction();
		if(tag == null) {
			ft.replace(contentId, fragment);
		}else {
			ft.replace(contentId, fragment, tag);
		}
		ft.commit();
	}
}


当然这里只是简单的讲一下如何把SlidingMenu集成进来使用,具体一些美化之类的大家自己发挥。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值