iOS开发常见问题
1. 在 ViewController 中添加子视图时,导航栏遮挡添加的子视图
let bpView = BpView.init(frame: CGRect.init(x: , y: , width: UIScreen.main.bounds.size.width, height: UIScreen.main.bounds.size.height))
self.view.addSubview(bpView)
以上代码在 viewDidLoad 添加时视图会被遮挡,解决遮挡问题,我们只需要在 viewDidLoad 开始出添加如下代码即可解决:
self.edgesForExtendedLayout = UIRectEdge.init(rawValue: )
2.iphone X屏幕适配问题
获取状态栏大小
CGRect statusRect = [[UIApplication sharedApplication] statusBarFrame];
获取导航栏大小
CGRect navRect = self.navigationController.navigationBar.frame;
3.在实现模态弹出框的时候,一定要设置ViewController的类型和转换代理,否则弹出时大小不正确
self.connectingAlertController.modalPresentationStyle = UIModalPresentationCustom;
self.connectingAlertController.transitioningDelegate = self;
4.CocoaPods删除第三方库
在Podfile里面删除对应库后执行以下命令
pod install --verbose --no-repo-update
5.在ViewDidLoad中获取到的视图大小不是最终的
由于存在约束,自动布局,在ViewDidLoad执行时,视图还未准备就绪,所以在此时获取到有关视图大小的数据是不准确的
6.UIScrollView子视图添加约束问题
有关约束的几个知识点:
约束包含距离约束、宽高和居中,约束一般都是以内容视图为参考依据,普通的View的frame和内容视图的大小相同,所以在添加约束的时候不会出现问题;而UIScrollView的内容视图是根据子视图的大小计算出来的,所以在添加的子视图的大小要能够确定,不管是直接指定还是根据约束计算出来的
7.代码添加约束
需要设置视图的 translatesAutoresizingMaskIntoConstraints 为 NO
8.可视化添加UIButton时,type要选择Custom,否则,设置背景图片的时候左上角可能会有色块
9.浮点数处理类:NSDecimalNumber NSDecimalNumberHandler
10.设置导航栏标题颜色 [self.navigationController.navigationBar setTitleTextAttributes:@{NSForegroundColorAttributeName:[UIColor whiteColor]}];
iOS开发常见问题的更多相关文章
- ios开发常见问题及解决办法
1 . storyboard连线问题 产生原因:将与storyboard关联的属性删除了,但是storyboard中还保持之前所关联的属性. 解决: 点击view controller 点击这排 ...
- Xaramin IOS 开发常见问题
调试时提示找不到obj某某文件,勾选后编译,再取消勾选后再次调试 APP不能上网(而且无法通过配置允许上网的APP,因为根本 找不到需要的APP),不要使用IOS11测试版本,自动禁网 截图路径 %U ...
- iOS开发常见问题(不断更新)
1.如何从程序退出到桌面 在单击事件中 exit(0);即可. 2.如何强制横屏 在你需要横屏的控制器里加入如下代码 - (BOOL)shouldAutorotate{ return NO; } - ...
- iOS开发中常见问题集锦
在iOS开发中,会出现各种各样的问题.今天,就把这些常见的问题以及各位大牛的解决方案汇总下,方便以后查阅: 常见错误: 1. linker command failed with exit code ...
- 100个iOS开发/设计面试题汇总
常见问题 你昨天/这周学习了什么? 你为什么热衷于软件开发? 你对哪一种控制系统比较熟悉? 是否参与过GitHub项目? 是否参与过GitHub或其他同类型网站的iOS开源项目? 请描述一下你的iOS ...
- iOS开发--Bison详解连连支付集成简书
"最近由于公司项目需要集成连连支付,文档写的不是很清楚,遇到了一些坑,因此记录一下,希望能帮到有需要的人." 前面简单的集成没有遇到什么坑,在此整理一下官方的集成文档,具体步骤如下 ...
- 100个iOS开发/设计程序员面试题汇总,你将如何作答?
100个iOS开发/设计程序员面试题汇总,你将如何作答? 雪姬 2015-01-25 19:10:49 工作职场 评论(0) 无论是对于公司还是开发者或设计师个人而言,面试都是一项耗时耗钱的项目, ...
- iOS 开发设计常用软件及工具整理
1, xCode 2, AppCode 3, Skech 原型设计软件 4, Hype 动画设计工具 5, fontawsome 免费图表 6, Prepo icon, images.catlog 生 ...
- ARKit从入门到精通(11)-ARKit开发常见问题及解决方案
转载请注明出处:ARKit从入门到精通(11)-ARKit开发常见问题及解决方案 本文主要介绍ARKit开发过程中一些常见问题 1.ARKit框架无法导入问题 2.ARKit运行黑屏或者白屏问题:Un ...
随机推荐
- stl_tree.h/insert_unique()
// 安插新值:節點鍵值不允許重複,若重複則安插無效. // 注意,傳回值是個pair,第一元素是個 RB-tree 迭代器,指向新增節點, // 第二元素表示安插成功與否. template < ...
- Python--day61--Django ORM关系的简单梳理
models.py中的代码和数据库中的表对应
- hdu 1128 Self Numbers
Self Numbers Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)To ...
- python模块之configparser模块
configparser模块:用于按一定格式创建配置文件 创建 import configparser config = configparser.ConfigParser() config['DEF ...
- 2019-4-10-win10-uwp-自定义标记扩展
title author date CreateTime categories win10 uwp 自定义标记扩展 lindexi 2019-04-10 09:46:13 +0800 2019-04- ...
- linux poll 和 select
使用非阻塞 I/O 的应用程序常常使用 poll, select, 和 epoll 系统调用. poll, select 和 epoll 本质上有相同的功能: 每个允许一个进程来决定它是否可读或者写一 ...
- Nodejs之使用express框架搭建WEB应用
首先创建一个index.js,在里面引入相关的中间件,如果没有这些中间件,则需要在nodejs里进入index.js所在的文件夹安装这些模块,安装命令:npm install express ex ...
- Android4_学会使用Log打印
一.Log介绍: Android中的日志工具类是Log(android.util.Log),这个类中提供了如下5个方法来供我们打印日志. Log.v() .用于打印那些最为琐碎的.意义最小的日志信息. ...
- Android2_分析项目的结构
一.项目结构 成功运行第一个AS项目HelloWorld之后,我们开始试着分析一下这个项目.毕竟知其然也要知其所以然. 这是一个安卓的项目结构(实际上这是安卓模式的项目结构) 我们可以切换成Proje ...
- Django框架之中间件MiddleWare
Django中的中间件是一个轻量级.底层的插件系统,可以介入Django的请求和响应处理过程,修改Django的输入或输出.中间件的设计为开发者提供了一种无侵入式的开发方式,增强了Django框架的健 ...