SwiftUI UIViewRepresentable-UITextView检测属性文本的更改

SwiftUI UIViewRepresentable-UITextView检测属性文本的更改,swift,uikit,swiftui,nsattributedstring,nsmutableattributedstring,Swift,Uikit,Swiftui,Nsattributedstring,Nsmutableattributedstring,我无法让textview检测@Binding属性中的更改,因为它具有属性文本而不是文本。如何检测这些更改并进行相应更新。我已尝试将UITextView本身设置为状态,但不起作用。这是我的密码: struct multilitextview:UIViewRepresentable{ @绑定变量文本:NSMutableAttributeString @状态私有变量视图=UITextView() func makeUIView(上下文:context)->UITextView{ self.view.i

我无法让textview检测
@Binding
属性中的更改,因为它具有属性文本而不是文本。如何检测这些更改并进行相应更新。我已尝试将UITextView本身设置为状态,但不起作用。这是我的密码:

struct multilitextview:UIViewRepresentable{
@绑定变量文本:NSMutableAttributeString
@状态私有变量视图=UITextView()
func makeUIView(上下文:context)->UITextView{
self.view.isScrolEnabled=true
self.view.isEditable=true
self.view.isUserInteractionEnabled=true
self.view.autocorrectionType=.no
self.view.inputAssistantItem.LeadingBarButtongGroups.removeAll()
返回自我视图
}
func updateUIView(uiView:UITextView,context:context){
打印(“更新”)
let all=NSMakeRange(0,text.length)
text.addAttribute(.font,值:UIFont(名称:“Courier”,大小:20.0)!,范围:全部)
//text.addAttribute(.foregroundColor,值:UIColor.white as!Any,范围:all)
//text.addAttribute(.backgroundColor,值:UIColor.black as!Any,范围:all)
让regex=try!NSRegularExpression(模式:“hi^”,选项:[])
let matches=(regex.matches(in:text.string,options:[],range:all))
一场接一场的比赛{
打印(匹配范围)
text.addAttribute(.foregroundColor,值:UIColor.blue,范围:match.range(at:1))
}
uiView.attributedText=文本
}
}
这里有一个可能有助于如何通过SwiftUI中的可表示性使用
UITextView
。这里有一个可能有助于如何通过SwiftUI中的可表示性使用
UITextView