iOS swift 关于NavigationController遇到的一些问题及解决方法
2016-12-01 16:10
746 查看
最近用swift语言做了一些ios项目,颇有些心得,记下一些深刻的问题造福自己,服务大家
1.以NavigationController做为容器后状态栏的字体颜色就会不在受系统的控制,要在NavigationController中的根ViewController中设置方可生效,代码如下:
self.navigationController!.navigationBar.barStyle =
UIBarStyle.Black
供选择的有UIBarStyle.Black,UIBarStyle.Default,UIBarStyle.BlackOpaque,UIBarStyle.BlackTranslucent,具体选择视项目需求而定
2.NavigationController做为容器后自带的滑动返回效果失效问题
导致该问题的情况是在storyboard中push到下一个页面后会自动生成一个navigationItem做为导航栏,当我们自己拖个按钮到导航栏返回按钮的位置,
并自定义了返回事件后,滑动返回效果就会失效
解决方法如下:
NavigationController的根ViewController继承UIGestureRecognizerDelegate,viewDidLoad()中添加
self.navigationController!.interactivePopGestureRecognizer!.delegate
= self
复写方法gestureRecognizerShouldBegin()代码如下:
func gestureRecognizerShouldBegin(gestureRecognizer:
UIGestureRecognizer) -> Bool {
if (self.navigationController!.viewControllers.count
== 1){
return
false
}else{
return
true
}
}
1.以NavigationController做为容器后状态栏的字体颜色就会不在受系统的控制,要在NavigationController中的根ViewController中设置方可生效,代码如下:
self.navigationController!.navigationBar.barStyle =
UIBarStyle.Black
供选择的有UIBarStyle.Black,UIBarStyle.Default,UIBarStyle.BlackOpaque,UIBarStyle.BlackTranslucent,具体选择视项目需求而定
2.NavigationController做为容器后自带的滑动返回效果失效问题
导致该问题的情况是在storyboard中push到下一个页面后会自动生成一个navigationItem做为导航栏,当我们自己拖个按钮到导航栏返回按钮的位置,
并自定义了返回事件后,滑动返回效果就会失效
解决方法如下:
NavigationController的根ViewController继承UIGestureRecognizerDelegate,viewDidLoad()中添加
self.navigationController!.interactivePopGestureRecognizer!.delegate
= self
复写方法gestureRecognizerShouldBegin()代码如下:
func gestureRecognizerShouldBegin(gestureRecognizer:
UIGestureRecognizer) -> Bool {
if (self.navigationController!.viewControllers.count
== 1){
return
false
}else{
return
true
}
}
相关文章推荐
- 关于tomcat服务器优化,常遇到的一些简单问题的解决方法 (z)
- 关于CocoaPod的遇到的一些问题解决方法
- 关于TSP项目中遇到的一些问题,及解决方法
- 关于将Java中序列化对象写入byte[]遇到的一些问题及解决方法
- 关于工作中遇到的一些问题及解决方法
- 关于spring升级到4.3.12 hibernate升级到4.3 遇到的一些问题和解决方法
- 最近在ArcGIS Engine开发中关于调用gp工具过程出现COM 组件的调用返回了错误 HRESULT E_FAIL 错误的解决方法 和 学习oracle中遇到的一些问题总结
- 关于JAVA MAP中经常遇到的一些问题及解决方法
- iOS真机编译遇到的一些问题及解决方法
- IIS7.0通过FastCGI方式运行PHP遇到的一些问题及解决方法
- 关于引用WebLogic.jar时遇到NoClassDefFoundError问题的解决方法
- IIS7.0通过FastCGI方式运行PHP遇到的一些问题及解决方法
- 关于修改frameworks的源码遇到的一点问题以及解决方法
- Kettle 在应用中遇到的一些问题和解决方法
- 关于安装pycv中遇到的各种问题解决方法
- SOS!!!关于游戏汉化项目中遇到一些不能解决的问题。。。。。
- 项目所遇到的一些管理问题解决方法
- 我用Red Hat遇到的一些问题解决方法
- 关于android开发遇到的一些问题的解决办法---间断的更新
- 解决重装VC++所遇到问题的方法(关于“内存不能read”)