我已經將一個空項目從ObjC移植到了Swift(我知道我可以用swift開始,但爲了這個問題,讓我們假設這不是一個選項)將項目從ObjC移植到Swift後不開始應用程序
我已經刪除ObjC類,包括main
文件,並通過簡單的AppDelegate.swift
和ViewController.swift
取而代之:
AppDelegate.swift:
import UIKit
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
func application(
_ application: UIApplication,
didFinishLaunchingWithOptions
launchOptions: [UIApplicationLaunchOptionsKey : Any]? = nil) -> Bool {
return true
}
}
ViewController.swift:
import UIKit
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
print("ViewController")
}
}
我確定我的初始故事板使用了ViewController類型的UIViewController。
事情編譯得很好,但應用程序沒有啓動,AppDelegate didFinishLaunchingWithOptions函數未被調用,並且沒有視圖可見。我想我需要告訴Xcode新的入口點是AppDelegate.swift
,我希望@UIApplicationMain
正在做。
對於更多的上下文,我設置了一個需要用目標C編寫的窗口,但我希望演示應用程序能夠快速啓動。我找不到通過cocoapods自動執行此操作的選項,因此我將所有內容都設置爲了客觀的C,並且我試圖將該演示應用程序移至快捷方式。我沒有手動更改任何構建設置。
是否已進行了在建的任何變化設置? –
nop,除非通過添加/刪除文件自動生成。 – Guig
要運行你的代碼,你的應用應該有Swift編譯器。檢查構建設置 –