美文网首页
Winson 的 iOS 笔记(持续更新)

Winson 的 iOS 笔记(持续更新)

作者: winsonGali | 来源:发表于2017-12-26 09:16 被阅读0次

    以下,记录一些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
    

    相关文章

      网友评论

          本文标题:Winson 的 iOS 笔记(持续更新)

          本文链接:https://www.haomeiwen.com/subject/iskxrxtx.html