APP的正常需求显示是这样的(在该界面NavigationBar是hidden的,在下个界面NavigationBar是显示的),

实现该效果的方法是这样的,


然后当我用present方法跳转到login的界面后,dismiss回来后NavigationBar竟然又显示了,

然后就凌乱了,本来想新建个简单的工程,查看问题。想想又太麻烦。还是断点慢慢调吧。
考虑到时NavigationBar的hidden的问题,我就在父类的方法里打了断点,

当我present到Login界面后,这两个地方都没走,但是当我在Login界面dismiss后,断点处停了,



可以看到,调用viewWillAppear:时,FDFullscreenPopGesture交换到自己的fd_viewWillAppear:方法中,然后在block中调用了setNavigationBarHidden:方法,通过下面的图,可以看出fd_prefersNavigationBarHidden的值默认false,就是显示NavigationBar。

解决方法呢也很简单,就是自己更改fd_prefersNavigationBarHidden值就可以了,

总结,以前使用FDFullscreenPopGesture时,一般都不改默认属性,直接导入使用。这次通过这个问题把库的源码又看了看,其他的一些属性也知道其用途。
第一次写简书,写的太水了。下次要不要写仿京东设置界面,上下滑动时NavigationBar由不显示到显示的动画实现过程,好像还是有点水。

网友评论