Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios UITextView接收来自听写的文本,但textView.text属性中的文本为零_Ios_Swift_Uitextview - Fatal编程技术网

Ios UITextView接收来自听写的文本,但textView.text属性中的文本为零

Ios UITextView接收来自听写的文本,但textView.text属性中的文本为零,ios,swift,uitextview,Ios,Swift,Uitextview,我试图从UITextView获取文本,其输入方法是听写。在textViewDidChangedelegate方法中,我尝试打印以下信息: print(textView.text) print(myTextView.text) print(textView.hasText) print(textView.attributedText) print(textView.textStorage) 除hasText返回为false外,所有这些返回值均为零 文本就在textView中可见,但未被

我试图从UITextView获取文本,其输入方法是听写。在
textViewDidChange
delegate方法中,我尝试打印以下信息:

 print(textView.text)
 print(myTextView.text)
 print(textView.hasText)
 print(textView.attributedText)
 print(textView.textStorage)
hasText
返回为false外,所有这些返回值均为零

文本就在textView中可见,但未被注册。我应该说,当我在字段中编辑另一个表单,然后尝试从此文本字段中获取值时,输入的文本在textView的textView.text属性中可见。但这就像编辑其他字段需要一些时间才能完全“注册”textView对象一样

知道这里会发生什么吗?

过一会儿试试这个

let when = DispatchTime.now() + 0.5
DispatchQueue.main.asyncAfter(deadline: when) {
   print(textView.text)
   print(textView.hasText)
   print(textView.hasText)
   print(textView.attributedText)
   print(textView.textStorage)
}
更新:这是因为您正在设置文本之前尝试打印文本。将文本设置为文本视图需要一点时间。

请稍后再试

let when = DispatchTime.now() + 0.5
DispatchQueue.main.asyncAfter(deadline: when) {
   print(textView.text)
   print(textView.hasText)
   print(textView.hasText)
   print(textView.attributedText)
   print(textView.textStorage)
}

更新:这是因为您正在设置文本之前尝试打印文本。将文本设置为文本视图需要一点时间。

是否设置了UITextView的委托?是的,确实调用了所有委托方法。如果设置了UITextView的委托,确实调用了所有委托方法