当老板要求实现 这种
FlowingDrawer效果的时候,我用了这个框架,看起来的时候实际是很不错的,今天来说的其实就是几个坑 。你不能再代码里面设置侧边栏的宽度,只能在布局的xml中设置,实际上来说也可以设置,只不过不是框架当中涉及的。还有一个坑就是 我的fragment 是一个viewpager 当viewpager加载过多的fragement的时候,那么问题来了,我不知道是什么原因,在viewpager最后两页,fragment跳转到任意的activity,框架的open() 方法偶尔打不开菜单,你只能看到
这样子卡住,我并没有找到什么原因,后来我找到一个代替的方法,在源码的重新替换
public void closeDrawer() { mLeftMenuOnScrren = 0.f; pointY = getHeight() / 2; releasing = true; mFlowingView.resetContent(); mHelper.smoothSlideViewTo(mLeftMenuView, -mLeftMenuView.getWidth(), mLeftMenuView.getTop()); postInvalidate(); } public void openDrawer() { mLeftMenuOnScrren = 1.0f; pointY = getHeight() / 2; mHelper.smoothSlideViewTo(mLeftMenuView, 0,mLeftMenuView.getTop()); postInvalidate(); callback.onViewPositionChanged(mLeftMenuView,0,0,0,0);}
这样就解决这个bug,当然来说我并没有深入的解决框架里面bug(ps:只是太懒,框架有点大,希望作者),还是对使用这个框架遇到同样问题的人一点帮助。