首页 > 代码库 > slidingmenu

slidingmenu

? ? slidingmenu是一个开源组件。提供了左滑菜单和右滑菜单。下面是一个使用例子的工程源码。

? ? 在项目中不去管源码仅仅只是使用的话,主要需要实现的有3个类

MainActivity:这个类中设置slidingmenu中的设置信息。是否显示左侧menu,右侧menu,menu的宽度,过场动画,默认出现的页面

ContentFragment:显示的主页面

MenuFragment:菜单项

??

? ?public void onCreate(Bundle savedInstanceState) {

? ? ? ? super.onCreate(savedInstanceState);

? ? ? ? setTitle("SlidingMenu Demo");

? ? ? ? setContentView(R.layout.frame_content);

? ? ? ? // set the Behind View

? ? ? ? setBehindContentView(R.layout.frame_menu);

? ? ? ? FragmentTransaction fragmentTransaction = getFragmentManager().beginTransaction();

? ? ? ? MenuFragment menuFragment = new MenuFragment();

? ? ? ? fragmentTransaction.replace(R.id.menu, menuFragment);

? ? ? ? fragmentTransaction.replace(R.id.content, new ContentFragment("Welcome"),"Welcome");

? ? ? ? fragmentTransaction.commit();

? ? ? ? // customize the SlidingMenu

? ? ? ? SlidingMenu sm = getSlidingMenu();

? ? ? ? sm.setShadowWidth(50);

? ? ? ? sm.setShadowDrawable(R.drawable.shadow);

? ? ? ? sm.setBehindOffset(60);

? ? ? ? sm.setFadeDegree(0.35f);

? ? ? ? //设置slding menu的几种手势模式

? ? ? ? //TOUCHMODE_FULLSCREEN 全屏模式,在content页面中,滑动,可以打开sliding menu

? ? ? ? //TOUCHMODE_MARGIN 边缘模式,在content页面中,如果想打开slding ,你需要在屏幕边缘滑动才可以打开slding menu

? ? ? ? //TOUCHMODE_NONE 自然是不能通过手势打开啦

? ? ? ? sm.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);

? ? ? ? //使用左上方icon可点,这样在onOptionsItemSelected里面才可以监听到R.id.home

? ? ? ? getActionBar().setDisplayHomeAsUpEnabled(true);

? ? }

SlidingMenu sm = getSlidingMenu();

下面的几条语句分别设置了Shadow的宽度,Menu的宽度,?

setTouchModeAbove:设置滑动动作出发菜单出现的区域,可以是全屏或者仅仅屏幕边缘

?

?

?

?

?

?

?

?

?

?

?

?

slidingmenu