Я адаптирую свое приложение для iPad под Ma c Catalyst, и в приложении у меня есть UITextView
внутри UITableViewCell
с некоторым странным поведением. Все мои текстовые представления внутри ячеек табличного представления вводят ключ возврата. Я просто нажимаю на textView, и он застревает, нажимая клавишу возврата, создавая новые строки (я ничего не печатаю). Я пытался использовать разные клавиатуры, и я получаю тот же результат.
Этого не происходит на iPhone или iPad. Это также не происходит все время, это очень случайно. Кто-нибудь знает, как это исправить?
Вот мой код:
class TextViewCell: UITableViewCell {
override func awakeFromNib() {
super.awakeFromNib()
textView.delegate = self
textView.isScrollEnabled = false
textView.returnKeyType = .done
}
}
// MARK: - textView functions
extension TextViewCell: UITextViewDelegate {
//grow textView as the user types
func textViewDidChange(_ textView: UITextView) {
let size = textView.bounds.size
let newSize = textView.sizeThatFits(CGSize(width: size.width, height: CGFloat.greatestFiniteMagnitude))
if size.height != newSize.height {
UIView.setAnimationsEnabled(false)
tableView?.beginUpdates()
tableView?.endUpdates()
UIView.setAnimationsEnabled(true)
if let thisIndexPath = tableView?.indexPath(for: self) {
tableView?.scrollToRow(at: thisIndexPath, at: .bottom, animated: false)
}
}
}
}
Кто-нибудь еще сталкивался с этой проблемой и знает, как ее исправить ???