我正在寻找将我的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. LINQ委托代序
- 2. 应用程序委托用法
- 3. Swift UIWebView委托使用并覆盖shouldStartLoadWith
- 4. 委托签名/通用委托?
- 5. 使用jQuery委托()替换live()
- 6. 应用程序委托泄漏问题
- 7. NS应用程序委托问题
- 8. jquery委托方法应用程序
- 9. 应用程序委托问题,MonoTouch
- 10. 应用程序委托对象
- 11. iPhone - 写在应用程序委托
- 12. 应用程序委托 - 可可
- 13. 切换使用委托
- 14. 从Swift目标C项目访问应用程序委托
- 15. 应用程序委托 - 加载核心数据Swift
- 16. 应用委托和协议
- 17. 有没有更好的方法?委托 - >委托 - >委托
- 18. Swift /如何使用popViewController调用委托
- 19. 委托模态视图swift
- 20. Swift委托和SocketScan scanApi.setDelegate()
- 21. Swift UICollectionView委托执行segue
- 22. UItextView委托swift - textViewDidBeginEditing不叫
- 23. 在ViewController中调用App委托数组
- 24. 使用委托者
- 25. 多线程委托/事件
- 26. 如何从Objective-C使用委托Swift?
- 27. didReceiveAuthenticationChallenge委托没有在Swift中调用
- 28. 如何使用SWIFT委托与可可
- 29. 试图使用委托时Swift EXC_BAD_INSTRUCTION
- 30. C#委托与事件处理程序
更容易开始一个新的目标,迅速并从那里工作。您不应该将同一个类的.m和.swift链接到同一个目标,否则您将从编译器中获得重复的符号错误。看看这个[链接](https://developer.apple.com/library/ios/documentation/Swift/Conceptual/BuildingCocoaApps/Migration.html) – Bamsworld