UITextView在粘贴操作(iOS11)上出现动画故障

时间:2018-08-09 15:30:44

标签: ios objective-c swift uikit uitextview

我面临一个非常奇怪的错误。当我在A中粘贴任何内容时,我会收到令人惊讶的动画故障。

要重现它,我刚刚创建了一个黑色的transfered_to,通过情节提要将UITextView添加到.xcodeproj并运行了该应用程序。

我发现的唯一类似问题是https://twitter.com/twostraws/status/972914692195790849 它说这是iOS11中UITextView的错误。但是我的iPhone上有很多ViewController的应用程序都可以在iOS11上正常工作。 您可以在此处的视频中看到错误-https://twitter.com/twostraws/status/972914692195790849

任何建议或帮助将不胜感激。 我尝试了什么?  -尝试以最小的更改进行新的清晰项目;  -禁用所有自动更正类型;  -消除了限制;  -在多款版本分别为11.2.5和11.4.2的iPhone上试用。

原始项目已附加。它是在UIKitUITextview上制成的 https://ufile.io/fzyj8

1 个答案:

答案 0 :(得分:5)

我检查了iPhone上的其他一些应用程序,例如Todoist,并在那里发现了相同的错误。但我也找到了解决方案。 我希望苹果公司能够紧急修复此错误。

因此,您可以实现UITextPasteDelegate并禁用粘贴动画。该API仅在iOS11 +上可用,但似乎该错误也仅在iOS11上再现。

class ViewController: UIViewController {

    @IBOutlet weak var textView: UITextView!

    override func viewDidLoad() {
        super.viewDidLoad()
        textView.pasteDelegate = self
    }
}

extension ViewController: UITextPasteDelegate {
    func textPasteConfigurationSupporting(_ textPasteConfigurationSupporting: UITextPasteConfigurationSupporting, shouldAnimatePasteOf attributedString: NSAttributedString, to textRange: UITextRange) -> Bool {
        return false
    }
}