kne*_*llr 7 xcode intrinsic-content-size swiftui xcode11
当我在SwiftUI中创建视图并在Xcode预览中使用渲染时PreviewLayout.sizeThatFits,预览会根据其内容调整其大小。当我使用导入UIKIt视图时UIViewRepresentable,它会显示完整的设备尺寸框架。
有没有一种方法,使SwiftUI尊重intrinsicContentSize的UIView子类?
struct Label: UIViewRepresentable {
func makeUIView(context: UIViewRepresentableContext<Label>) -> UILabel {
return UILabel()
}
func updateUIView(_ uiView: UILabel, context: UIViewRepresentableContext<Label>) {
uiView.text = "Some text"
}
}
#if DEBUG
struct Label_Previews: PreviewProvider {
static var previews: some View {
Group {
Label().previewLayout(.sizeThatFits)
}
}
}
#endif
Run Code Online (Sandbox Code Playgroud)
小智 25
将以下内容添加到您的 updateUIView 函数中:
uiView.setContentHuggingPriority(.defaultHigh, for: .vertical)
uiView.setContentHuggingPriority(.defaultHigh, for: .horizontal)
Run Code Online (Sandbox Code Playgroud)