我正在尋找將我的Objective-c應用程序委託從Swift應用程序委託中取代。我已經在Swift中轉換了大量的代碼,希望最終能夠隱藏App-Delegate。我一直在研究互聯網,並沒有找到任何實際的具體信息去實現這一點,所以我想這可能會有助於創建一個有關該主題的StackOverFlow問題。看起來我可以從X代碼中的File-> New file菜單創建一個新的應用程序委託。但我的問題是編譯器如何知道選擇Swift App-Delegate VS Objective-C App-Delegate?我查看過構建設置,還沒有發現任何指向此代理的內容(除構建階段外)。任何幫助將不勝感激。謝謝!換掉應用程序委託objective-c文件並用swift App委託代替?
0
A
回答
0
假設此項目構建爲Objective-C項目,您應該有一個main.m文件,其中包含對UIApplicationMain
的調用。該調用中的最後一個參數指定應用程序委託類名稱。
0
在Obj-C文件中main.m
是程序的輸入點。在這個文件中,你知道哪些類將通過調用函數UIApplicationMain
是應用程序的委託:
UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
在斯威夫特可以使用@UIApplicationMain
attribute您AppDelegate類指示輸入點和委託類。或者你可以創建main.swift
文件。
在同一個項目中,您不能同時擁有main.m
和main.swift
(或具有@UIApplicationMain
屬性的應用程序委託類)。在這種情況下,你會得到鏈接錯誤。
因此,切換到您的應用程序委託的Swift實現,你需要用屬性標記它,然後刪除舊的Obj-C類和main.m
文件。或者您需要在main.m
文件中指定新類。
相關問題
- 1. 在App委託類中用Main.storyboard文件替換xib文件
- 2. Textfield委託swift
- 3. LINQ委託代序
- 4. 委託幫助 - 使用類委託用於委託內部
- 5. 在swift中使用委託
- 6. 應用程序委託用法
- 7. Swift UIWebView委託使用並覆蓋shouldStartLoadWith
- 8. Parallel.Foreach委託調用另一個委託
- 9. 委託簽名/通用委託?
- 10. 應用程序委託 - 可可
- 11. jquery委託方法應用程序
- 12. 應用程序的委託在IOS
- 13. Azure Active Directory委託Nodejs應用程序
- 14. NS應用程序委託問題
- 15. 應用程序委託對象
- 16. iPhone - 寫在應用程序委託
- 17. 多視圖和應用程序委託?
- 18. 應用程序委託泄漏問題
- 19. UITabBarController插座在應用程序委託
- 20. 應用程序委託問題,MonoTouch
- 21. uiview去uinavigation?應用程序委託?
- 22. 使用jQuery委託()替換live()
- 23. 替代使用上muticast委託
- 24. 調用ViewControllers方法或從應用程序委託Sewan(Swift)
- 25. 使用委託
- 26. 使用委託
- 27. 委託調用
- 28. 切換使用委託
- 29. 無法從uittabcontroller拖動參考/委託給應用程序委託人
- 30. 委託事件
更容易開始一個新的目標,迅速並從那裏工作。您不應該將同一個類的.m和.swift鏈接到同一個目標,否則您將從編譯器中獲得重複的符號錯誤。看看這個[鏈接](https://developer.apple.com/library/ios/documentation/Swift/Conceptual/BuildingCocoaApps/Migration.html) – Bamsworld