最近项目中要添加侧滑效果,本来我是真不想用SlidingMenu这个框架的,原因呢我想很多大家都明白,这框架都好几年没有更新了,早就放弃了。
可是我看了一下其它框架,好像都没有SlidingMenu那效果,主要还是自己渣到不行,不然那效果啥的想解决应该不难。
添加SlidingMenu的步骤我这里就不说了,这里我只是想记录一下项目中遇到的问题以及解决方案,方便日后自己能查阅,如果能帮到别人那就是再好不够的了,有的时候百度半天和问了N个群都没找到解决方案真的很无奈,怎么添加SlidingMenu的方法百度上一大把,其实也很简单,完全不用改布局文件,添加几行代码就能实现。
private void initSlidMenuView() {
// 实例化侧滑菜单类对象
mSlidingMenu = new SlidingMenu(getApplicationContext());
// 设置菜单显示的模式
mSlidingMenu.setMode(SlidingMenu.LEFT);
// 设置菜单内容
mSlidingMenu.setMenu(R.layout.fragment_slidmenu);
// getSupportFragmentManager().beginTransaction().replace(R.id.slidmenu_fragment, new SlidMenuFragment()).commit();
// 测出菜单的模式
mSlidingMenu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);
// mSlidingMenu.set
// setSlidingActionBarEnabled(false); //
// 设置菜单显示宽度或者是内容显示的宽度
mSlidingMenu.setBehindWidth(300);
// mSlidingMenu.setBehindOffset(150);
// 将菜单归属到当前的Activity中
mSlidingMenu.attachToActivity(this, SlidingMenu.SLIDING_WINDOW);
}
问题如下图所示:
问题描述:添加了SlidingMenu之后呢,主Activity的标题栏下移了,由上图中很清楚的可以看到,左边的是添加SlidingMenu之后的,右边的是添加SlidingMenu之前的。
走的弯路:
- 我想这肯定是多了一个标题栏,如是我就从这下手了
- 一开始我是更改下面的这两种格式,很明显是错的
// 把滑动菜单添加进所有的Activity中,可选值SLIDING_CONTENT ,SLIDING_WINDOW
menu.attachToActivity(this,SlidingMenu.SLIDING_CONTENT);
- 也不知道怎么的突然想到去改Activity的Theme了,试了一下,果然,只要是NoActionBar的都可以。
解决方案:去Activity中更改主题,我添加的主题是@android:style/Theme.DeviceDefault.Light.NoActionBar,其实就是去掉ActionBar,以前是去掉TitleBar的,去掉ActionBar之后效果就是我想要的了。