Dismiss UITextView Keyboard When User Taps Away

In this short Swift code example, you will learn how to create and customize UITextView programmatically in Swift.

  • Create UITextView programmatically
  • Position UITextView at the center of the view
  • Change UITextView background colour
  • Create UITapGestureRecognizer
  • Add UITapGestureRecognizer to main view
  • Add UITextView as a subview
  • Create a function to handle Tap away event
import UIKit
class ViewController: UIViewController, UITextFieldDelegate  {
    override func viewDidLoad() {
        super.viewDidLoad()
    }
    override func viewWillAppear(_ animated: Bool) {
        super.viewWillAppear(animated)
        
        let textView = UITextView(frame: CGRect(x: 20.0, y: 90.0, width: 250.0, height: 100.0))
        textView.contentInsetAdjustmentBehavior = .automatic
        
        textView.center = self.view.center
        textView.textAlignment = NSTextAlignment.justified
        textView.backgroundColor = UIColor.lightGray
        
        // Use RGB colour
        textView.backgroundColor = UIColor(red: 39/255, green: 53/255, blue: 182/255, alpha: 1)
        
        // Update UITextView font size and colour
        textView.font = UIFont.systemFont(ofSize: 20)
        textView.textColor = UIColor.white
        
        textView.font = UIFont.boldSystemFont(ofSize: 20)
        textView.font = UIFont(name: "Verdana", size: 17)
        
        // Capitalize all characters user types
        textView.autocapitalizationType = UITextAutocapitalizationType.allCharacters
        
        // Make UITextView web links clickable
        textView.isSelectable = true
        textView.isEditable = false
        textView.dataDetectorTypes = UIDataDetectorTypes.link
        
        // Make UITextView corners rounded
        textView.layer.cornerRadius = 10
        
        // Enable auto-correction and Spellcheck
        textView.autocorrectionType = UITextAutocorrectionType.yes
        textView.spellCheckingType = UITextSpellCheckingType.yes
        // myTextView.autocapitalizationType = UITextAutocapitalizationType.None
        
        // Make UITextView Editable
        textView.isEditable = true
        
        self.view.addSubview(textView)}
    
}

For more Swift code examples and tutorials, please check the Swift Code Examples page on this website.


Leave a Reply

Your email address will not be published.