import UIKit class TextViewVC: UIViewController, UITextViewDelegate { @IBOutlet weak var textView: UITextView! override func viewDidLoad() { super.viewDidLoad() setupKeyboardAccessoryView() textView.textContainerInset = UIEdgeInsets(top: 30, left: 30, bottom: 30, right: 30) textView.delegate = self textView.isScrollEnabled = false var message = "" for i in 1...10000 { message += "\(i)\n" } textView.text = message } private func setupKeyboardAccessoryView() { let kbToolBar = UIToolbar(frame: CGRect.zero) kbToolBar.barStyle = UIBarStyle.default kbToolBar.sizeToFit() let spacer = UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.flexibleSpace, target: self, action: nil) let close = UIBarButtonItem(title: "閉じる", style: .done, target: self, action: #selector(closeKeyboard(sender:))) kbToolBar.items = [spacer, close] textView.inputAccessoryView = kbToolBar } @objc func closeKeyboard(sender: Any) { self.view.endEditing(true) } }
(edited)