Xcode9新建个新项目,结果一运行直接报错
苹果爸爸在苹果在iOS7中引入的Top Layout Guide和Bottom Layout Guide,这些布局指南在iOS 11中被弃用,取而代之的是Safe Area Layout Guide.
针对新特性,解决方案如下
第一步、在项目报错地方打开右边工具栏找到如图位置选中View Controller,去掉Use Safe Area Layout Guides
第二步、切换到Main.storyboard文件,重读第一步操作打开右边工具栏找到如图位置选中View Controller,去掉Use Safe Area Layout Guides
来源
在屏幕适配上的问题 iPhone X的特殊待遇
#define KStatusBarHeight [[UIApplication sharedApplication] statusBarFrame].size.height
#define KNavBarHeight 44.0
#define KTabBarHeight ([[UIApplication sharedApplication] statusBarFrame].size.height>20?83:49)
//iphone x
#define KTopHeight (KStatusBarHeight + KNavBarHeight)
屏幕适配中的宏定义在下面记录一下
#define scaleX [UIScreen mainScreen].bounds.size.width/375.0f
#define scaleY [UIScreen mainScreen].bounds.size.height/667.0f
长期使用的若引用
#define WS(weakSelf) __weak typeof(self) weakSelf = self
#define SS(ss) __strong typeof(self)ss = self
iOS 11 UIScrollView的新特性(automaticallyAdjustsScrollViewInsets 不起作用了)
if (@available(iOS 11.0, *)) {
Scrollview.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;
} else {
self.automaticallyAdjustsScrollViewInsets = YES;
}
2017-10-20
在iOS 11的我们之前使用的 Grouped 类型的tableView 返回高度不写返回 sectionHeader 和 sectionFooter 的代理的时候 返回 区头和区尾高度的 代理都不会走
解决方法是一定要有返回 return nil 就会走
//在刷新整个TableView 的时候出现了很奇葩的事情
整个TableView 不会停留在原有的位置了 来回跳动---苦恼的问题 原来还是 iOS11 退出的预估高度的问题 而且 使用mj 刷新 设置上拉加载更多的时候我的个乖乖 调用 了好几次上拉的方法 郁闷的要死。。。。。
解决办法 (感谢朋友们的帮助!!!)
if (@available(iOS 11.0, *)) {
UITableView.appearance.estimatedRowHeight = 0;
UITableView.appearance.estimatedSectionFooterHeight = 0;
UITableView.appearance.estimatedSectionHeaderHeight = 0;
_myTableView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;
} else {
self.automaticallyAdjustsScrollViewInsets = NO;
}
当CollectionView 内容不超过控件本身高度 不能滚动 设置一下就行
self.collectionView.alwaysBounceVertical = YES
正则判断 谓词过滤
NSString *pattern = @"^[0-9a-zA-Z\u4E00-\u9FA5\\d]*$";
NSPredicate *pred = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", pattern];
BOOL isMatch = [pred evaluateWithObject:str];
//看到公司以前项目中有的一个功能 就找了一下 如何打开QQ到指定QQ好聊天
这里主要是记录项目中的一个需求,闲着没事就把它记录下来,以供有需要的朋友们;
我们一般用webview加载,所以主要的是设置在它的跳转路径上;
这里有两个路径,介绍分别如下;
1. mqq://im/chat?chat_type=wpa&uin=好友QQ号&version=1&src_type=web;
这个路径是在iOS10.0上测试是有效的,直接提示是否打开QQ,并在用户允许的情况下跳转到指定的好友并与之进行聊天;
2. https://wpa.qq.com/msgrd?v=3&uin=好友QQ号&site=qq&nemu=YES;
这个路径的跳转就不尽人意了,不管是否有QQ,都先要到App Store的QQ下载页面,如果手机有QQ那么直接打开,反之下载,并且不会打开你指定的联系人聊天界面;
3. 如果想打开QQ公众号进行聊天的话,直接通过上面的方法是行不通的,那么只有曲线救国;通过打开Safari打开就能实现这个功能了;
```
上传APPStore 出现问题
原因是因为Mac的Java版本更新导致
解决办法
在终端执行下面三条指令:
1、cd ~
2、mv .itmstransporter/ .old_itmstransporter/
3、"/Applications/Xcode.app/Contents/Applications/Application Loader.app/Contents/itms/bin/iTMSTransporter"
终端执行完毕,重现打开xcode打包上传就可以了
注意:
一定要等第三条命令执行完毕才可以哦!
作者:永不止步的程序员
链接:https://www.jianshu.com/p/80d0e873493f
來源:
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
```