以下,记录一些iOS开发遇到的琐碎知识,持续更新:
1、Xcode的Assets里面图片裁剪问题;
Xcode的Assets里面的需要Slicing的图片区分1x、2x和3x,如果只放一张1x的图进行Slicing,实际显示效果是模糊。
注:Slicing,切断、切片,实际应用为固定不变区域(一般是四个角),其他区域以一像素同色块填充。
2、解决MJRefresh不自动显示refreshing的问题:
if (@available(iOS 11.0, *)) {
self.collectionView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;
self.collectionView.contentInset = UIEdgeInsetsMake(64, 0, 0, 0);
self.collectionView.scrollIndicatorInsets = self.collectionView.contentInset;
} else {
self.automaticallyAdjustsScrollViewInsets = NO;
}
3、点击顶部状态栏,tableView滑动至顶部的监听事件:
#pragma mark - UIScrollViewDelegate
- (BOOL)scrollViewShouldScrollToTop:(UIScrollView *)scrollView {
NSLog(@"触发了回到顶部的动作");
return YES;
}
4、Pod search 遇到的问题:
错误:[!] Unable to find a pod with name, author, summary, or description matching xxx
① 检查这个开源项目是否真实存在在Cocoapods库中;
- 打开 https://cocoapods.org/ 输入要查询的项目,如果没搜索到,证明这个项目在Cocoapods库中确实不存在,可能不是安装的Cocoapods出了问题;
② 如果在 https://cocoapods.org/ 查询到该项目,用终端使用pod命令却查不到,可首先尝试移除索引的方法来排除问题:
rm ~/Library/Caches/CocoaPods/search_index.json
③ 如果方法 ② 未能解决问题,按顺序键入以下命令:
pod repo remove master
cd ~/.cocoapods/repos
git clone --depth 1 https://github.com/CocoaPods/Specs.git master
rm ~/Library/Caches/CocoaPods/search_index.json
Pod 安装与更新之常用命令
-
全部的库更新重新安装
pod install
-
只安装新添加的库和更新需要更新的库,已更新的库忽略。比如,在pod中新增了一个库,同时又修改了一个已安装库的版本,那么执行此操作可以安装新的库,同时更新那个修改过的已安装库。
pod install --verbose --no-repo-update
-
只更新指定的库,其他的库忽略
pod update 库名 --verbose --no-repo-update
5、消除警告:
代码格式:
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-相关命令"
// 警告的内容(出现警告的代码区)
#pragma clang diagnostic pop
相关命令:
-
方法弃用警告
-Wdeprecated-declarations
-
不兼容指针类型
-Wincompatible-pointer-types
-
循环引用
-Warc-retain-cycles
-
未使用变量
-Wunused-variable
-
未实现某个方法
-Wundeclared-selector
举个栗子:
//消除未使用变量警告
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wunused-variable"
int pageCount = 12; //这里并不会报警告
#pragma clang diagnostic pop
网友评论