我在UIColor
上添加了一个扩展,提供了快速转换到SwiftUI的Color
的功能,非常简单:
import Foundation
import SwiftUI
import UIKit
@available(iOS 13, macOS 10.15, *)
public extension UIColor {
/// Converts the platform specific color object to a swiftUI color struct.
/// - Returns: Equivalent SwiftUI color
func psoColor() -> Color {
return Color(self)
}
}
编译器在release模式下引发错误:* '在作用域'* 中找不到类型'Color'。但在调试模式下编译时,未收到该错误。
它所在的框架最初是用obj-c开发的,但我从Swift 3开始就一直在添加Swift类,没有出现任何问题。我目前使用的是Swift 5.3和Xcode 12.0。部署目标设置为iOS 10.0,这就是我添加@available
装饰器的原因。
我不知道如何调试这个,任何帮助是非常感谢。
2条答案
按热度按时间lyr7nygr1#
通过添加
import UIKit
,您的问题将在Swift 5中得到解决1l5u6lss2#
架构问题,swiftUI不适用于armv7。在发布模式下构建时,它包括arm64和armv7。
参考:SwiftUI - “Use of undeclared type xxx” on deployment targets below or equal to iOS 10