我一直关注this tutorial religiously已经验证了Swift 2.0和Xcode 7.1 (根据标题我正在使用Xcode 7.2.1 Swift 2.2),所以我卡住了在你实现它的文章“使用你的新CocoaPod”。我精确地跟着它,我的应用代表看起来像这样:
import UIKit
import RWPickFlavor
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
var window: UIWindow?
var rootViewController: UIViewController!
func application(application: UIApplication, didFinishLaunchingWithOptions
launchOptions: [NSObject : AnyObject]?) -> Bool {
setupRootViewController()
window = UIWindow(frame: UIScreen.mainScreen().bounds)
window?.rootViewController = rootViewController
window?.makeKeyAndVisible()
return true
}
func setupRootViewController() {
let bundle = NSBundle(forClass: PickFlavorViewController.self)
let storyboard = UIStoryboard(name: "Main", bundle: bundle)
rootViewController = storyboard.instantiateInitialViewController()!
}
}
但我在以下一行有错误:
let bundle = NSBundle(forClass: PickFlavorViewController.self)
错误消息显示:“使用未解析的标识符'PickFlavorViewController'”
在swift 2.0和2.2之间发生了影响CocoaPods的事情,我该如何解决?
答案 0 :(得分:2)
看起来你没有将PickFlavorViewController复制到你的项目中,这在你的教程中提到:
现在将所有内容 - 除了AppDelegate.swift和LaunchScreen.xib - 从IceCreamShop.xcworkspace中的上述组拖放到RWPickFlavor.xcworkspace中的相应组中,如下所示:
复制控制器,一切都应该没问题。祝你好运!
答案 1 :(得分:1)
我在这里遇到的问题,尽管按照教程到现场,当我复制文件时,它们被移动到我的文件系统中的Swift cocoa pod项目文件夹的根文件夹。这就是为什么我发错的信息,我的课程无法找到。
仅仅因为你在你的xcode项目中创建了一个组,并不意味着Xcode会制作任何类型的文件夹架构。
Xcode的项目结构是一个基于指针的系统,无论它在您的计算机文件系统中的哪个位置都指向该文件。在Xcode中移动它不会将其移动到文件夹中!
在我的情况下,文件被复制到根文件夹中,默认情况下是pod,查看名为你的项目的文件夹,它位于根文件夹中,但它不知道&#39 ; s在您的根目录中,因此在使用pod时找不到文件。
在您的根文件夹(您可以在其中找到RWPickFlavor.xcworkspace
)的pod项目中,您有一个与项目同名的文件夹。 将所有swift文件移动到该文件夹中。
更新您的广告连播以适应您的更改:
git add .
git commit -m 'Refactored the files (Or whichever commit message you want here)'
git tag 0.2.0
git push origin master --tags
pod repo push RWPodSpec RWPickFlavor.podspec
在您的冰淇淋店项目根目录(再一次,您发现[ProjectName].xcworkspace
)的地方,使用更新后的广告连播运行pod安装。
这些pod步骤中的一些可能是不必要的,但这是我为解决问题所做的。