Ios SwiftUI-如何在UITextView中包装多行文本而不滚动?

Ios SwiftUI-如何在UITextView中包装多行文本而不滚动?,ios,uitextview,swiftui,Ios,Uitextview,Swiftui,我正在使用UIViewRepresentable包装器创建一个可绑定的多行UITextVIew,因为本地SwiftUITextField仍然没有多行支持。只要在UITextView上设置了IsCrollenabled=true,这一切都可以正常工作 有没有一种方法可以让文本在不可滚动的情况下进行换行 导入快捷界面 结构TextfieldIssue:视图{ @State var text:String=“您好,我是一些长文本,如果IsScrolEnabled设置为true,它将自动换行,但如果Is

我正在使用
UIViewRepresentable
包装器创建一个可绑定的多行
UITextVIew
,因为本地SwiftUI
TextField
仍然没有多行支持。只要在UITextView上设置了
IsCrollenabled=true
,这一切都可以正常工作

有没有一种方法可以让文本在不可滚动的情况下进行换行

导入快捷界面
结构TextfieldIssue:视图{
@State var text:String=“您好,我是一些长文本,如果IsScrolEnabled设置为true,它将自动换行,但如果IsScrolEnabled设置为false,则不会换行”
var body:一些观点{
MultilineTextField(文本:$text)
}
}
结构MultilineTextField:UIViewRepresentable{
私有let视图=UITextView()
@绑定变量文本:字符串
func makeUIView(上下文:UIViewRepresentableContext)->UITextView{
view.isEditable=true
view.font=UIFont.systemFont(大小:24)
//只要这是真的,文本包装就可以
view.isCrollenabled=true
//如果未注释,则文本不会换行
//view.isCrollenabled=false
view.text=文本
view.delegate=context.coordinator
返回视图
}
func updateUIView(uiView:UITextView,context:UIViewRepresentableContext){
uiView.text=文本
}
func makeCoordinator()->TextFieldCoordinator{
let coordinator=textfield coordinator(自我)
self.view.delegate=协调器
返回协调员
}
}
类TextFieldCoordinator:NSObject,UITextViewDelegate{
变量父项:multilitextfield
init(uMultiletExtField:MultiletExtField){
self.parent=multilitextfield
}
func textViewDidChange(textView:UITextView){
self.parent.text=textView.text
}
}
结构TextfieldIssue\u预览:PreviewProvider{
静态var预览:一些视图{
TextfieldIssue()
}
}

只需将其添加到
makeUIView
中,文本就会自动换行

view.setContentCompressionResistancePriority(.defaultLow, for: .horizontal)
以下是完整更新的
makeUIView
函数:

func makeUIView(上下文:UIViewRepresentableContext)->UITextView{
view.isEditable=true
view.font=UIFont.systemFont(大小:24)
view.isCrollenabled=false
view.view.setContentCompressionResistancePriority(.defaultLow,用于:。水平)
view.delegate=context.coordinator
view.text=文本
返回视图
}

只需将其添加到
makeUIView
中,文本就会自动换行

view.setContentCompressionResistancePriority(.defaultLow, for: .horizontal)
以下是完整更新的
makeUIView
函数:

func makeUIView(上下文:UIViewRepresentableContext)->UITextView{
view.isEditable=true
view.font=UIFont.systemFont(大小:24)
view.isCrollenabled=false
view.view.setContentCompressionResistancePriority(.defaultLow,用于:。水平)
view.delegate=context.coordinator
view.text=文本
返回视图
}

下面的主题可能会有帮助。谢谢-你很快-我正要添加我的答案!以下主题可能会有所帮助。谢谢-你很快-我正要添加我的答案!