前言
做过iOS 开发的同学都应该知道 Masonry
,这个Objective-C下用于布局的框架 相比原生的来说,语法相对简单,可读性比较高,也更容易理解,所以在做开发的时候都会使用这个框架来布局。最近在开发Swift的项目,所以也想到了用类似的布局框架,找到了 SnapKit
,于是就喜闻乐见地踩到坑了。。
目录
- 掉进坑了
- 艰难挣扎
- 爬出坑了
- 填坑
掉进坑了
与往常一样,在找到 SnapKit
后, 兴冲冲地创建了一个新的工程文件来把玩(测试)一下这个框架。于是就新建了一个项目,接着熟练地打开终端,cd
到项目文件的目录下 vim Podfile
接着按照 SnapKit
GitHub 上的提示,复制粘贴了命令。。。。
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '10.0'
use_frameworks!
target '<Your Target Name>' do
pod 'SnapKit', '~> 3.0.2'
end
在修改了 Target Name
后激动的保存退出, 然后输入 pod install
在看到结果后笔者那个激动啊,So easy !! 一切都是那么的顺利,开心😊。
接着就是去文件目录去打开xcworkspace
看到Pods目录下的SnapKit文件, 😊 ,于是乎就进入
ViewController.swift
来测试代码。 按照SnapKit官方的做法,就是直接 import SnapKit
,我也照做了。。。 接着。。。
结果我遇到了Xcode 的老问题,
import
库的时候没有提示,这时候我就真的想。。。。
天真的我以为只是
import
的时候没有提示而已,于是乎就乖乖地手动敲了,可结果呢,TM这货又给我报错。。。
WTF 我TM不是导入成功了嘛!
艰难挣扎
- 这时候我想到了最近Cocoapods 更新至Ruby China源,淘宝源不再更新,所以就屁颠屁颠地跑去更新了一下配置。
可以参考Cocoapods Ruby源更新
更新完了后又屁颠屁颠地重新导入了一次,结果还是不行。F**K - 不是Cocoapods的问题,那只好百度了, 找到的方法是:把pods目录添加到用户头文件检索的路径,于是试了一下 参考:简书但是还是不能
import
。我TM就是日了狗了,什么鬼!心里真的是千万只草泥马奔腾而过。。。
爬出坑了
好吧 !只好去墙外找答案了。。。于是跑到stackoverflow上去搜了一下,还真的发现了和我类似的情况,简直就是柳暗花明又一村。。。开心😊。。简直开心地像只🐒!
于是仔细地研读了一下大神们给出的解决方案。
New project -> build&run -> add realm via cocoapods -> open Xcode workspace -> build&run again = success
尝试了一下,oh my god ! it worked ! 终于出现了,我长出一口气,真想大喊一身,还有谁!(中二少年)
然而我有带着怀疑的态度试着写了几行代码,看看能不能用,因为之前在Objective-C项目上用过Masonry,所以对SnapKit的语法风格大致了解。
我们来运行一下
到这里总算大功告成!表示好累啊!不过吧!其实还是蛮开心的!
挖坑
对于这是为什么会导致之种情况呢?我至今还没有搞懂,只是知道如何解决问题。不过可以参考RealmSwift解决方案
最后希望有大神能给出答案。。。。