Text View にボーダーを追加する方法 (Swift)

ここでは、Swift で iOS アプリの Text View にボーダーを追加する方法をご説明します。


複数行のテキストを入力可能にしたい時は、UITextField ではなく UITextView を使うことになると思います。

この UITextView ですが、デフォルトではボーダーがついていません。


例えば、iOS アプリのストーリーボードに次のように、Text View とボタンを追加します。

Text View にボーダーを追加する方法 (Swift) 1


これをシミュレーターで実行すると以下のようになります。

Text View にボーダーを追加する方法 (Swift) 2


多くの場合は、ボーダーが欲しいと思いますので、ボーダーを追加する方法をご紹介します。

ViewController.swift をアシスタントエディタで開き、UITextView のアウトレットを noteTextView という名前で作っておきます。

オブジェクトの追加の方法や、アウトレットの作り方がわからない方は「基本的な iOS アプリの作り方」をご覧ください。

Text View にボーダーを追加する方法 (Swift) 3

import UIKit

class ViewController: UIViewController {

    @IBOutlet weak var noteTextView: UITextView!
    
    override func viewDidLoad() {
        super.viewDidLoad()
    }
}

そして、ViewController.swift の viewDidLoad() に以下のコードを追加します。

import UIKit

class ViewController: UIViewController {

    @IBOutlet weak var noteTextView: UITextView!
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        noteTextView.layer.borderColor = UIColor.lightGray.cgColor
        noteTextView.layer.borderWidth = 0.5
        noteTextView.layer.cornerRadius = 5
        noteTextView.contentInset = UIEdgeInsets(top: 5, left: 5, bottom: 5, right: 5)
    }
}

Text View にボーダーを追加する方法 (Swift) 4

10 行目では、Text View のボーダーの色をライトグレーに設定しています。

11 行目では、Text View のボーダーの幅を 0.5 に設定しています。

12 行目では、Text View の cornerRadius に 5 を設定して、ボーダーの四隅をすこし丸めています。

13 行目では、Text View の中の文字が端に近づきすぎないように、UIEdgeInsets を使って、少し端からの余白を追加しています。


これをシミュレーターで実行すると次のようになります。

Text View にボーダーを追加する方法 (Swift) 5

Text View に薄いグレーのボーダーが表示されていますね。


文字を入力してみるとこんな感じになります。

Text View にボーダーを追加する方法 (Swift) 6

お好みに応じて、ボーダーの色や太さなどを変更してお使いください。


以上、Swift で iOS アプリの Text View にボーダーを追加する方法をご説明しました。

© 2024 iOS 開発入門