100% , , , . ( , !!)
4 . UITextView UITableView ( UITableViewCell, UITableView, ). UITextView .
UITextView UITableView , . ( UITextView delegate)
func textViewDidChange(textView: UITextView) {
self.textView.sizeToFit()
UIView.setAnimationsEnabled(false)
self.tableView.beginUpdates()
self.tableView.endUpdates()
UIView.setAnimationsEnabled(true)
}
UITableView , UITextView .
func textViewDidBeginEditing(textView: UITextView) {
let delay = 0.005 * Double(NSEC_PER_SEC)
let time = dispatch_time(DISPATCH_TIME_NOW, Int64(delay))
dispatch_after(time, dispatch_get_main_queue()) {
var rect = self.textView.caretRectForPosition(self.textView.selectedTextRange?.end)
var changedRect = CGRectMake(rect.origin.x, rect.origin.y, rect.width, rect.height+3)
self.tableView.scrollRectToVisible(changedRect, animated: true)
}
}
UITableView contentInset scrollIndicatorInsets keyboardWillShow keyboardWillHide, .