Swiftでテキストフィールド(UITextField)をコードで追加する

calendar

reload

Swiftでテキストフィールド(UITextField)をコードで追加する

スポンサーリンク

SwiftでUITextFieldを追加

// UITextFieldを生成
let textField = UITextField()
textField.frame = CGRect(x: 10, y: 100, width: UIScreen.main.bounds.size.width-20, height: 38)
// プレースホルダを設定
textField.placeholder = "入力してください。"
// キーボードタイプを指定
textField.keyboardType = .default
// 枠線のスタイルを設定
textField.borderStyle = .roundedRect
// 改行ボタンの種類を設定
textField.returnKeyType = .done
// テキストを全消去するボタンを表示
textField.clearButtonMode = .always
// UITextFieldを追加
self.view.addSubview(textField)
// デリゲートを指定
textField.delegate = self

UITextFieldDelegateのメソッド

// 改行ボタンを押した時の処理
func textFieldShouldReturn(_ textField: UITextField) -> Bool {
    print("Return")
    return true
}

// クリアボタンが押された時の処理
func textFieldShouldClear(_ textField: UITextField) -> Bool {
    print("Clear")
    return true
}

// テキストフィールドがフォーカスされた時の処理
func textFieldShouldBeginEditing(_ textField: UITextField) -> Bool {
    print("Start")
    return true
}

// テキストフィールドでの編集が終了する直前での処理
func textFieldShouldEndEditing(_ textField: UITextField) -> Bool {
    print("End")
    return true
}

キーボードタイプ(keyboardType)

値 説明
.asciiCapable 標準のASCII文字を表示するキーボード
.asciiCapableNumberPad ASCII数字だけを出力する数字パッド
.decimalPad 数字と小数点のあるキーボード
.default 現在の入力メソッドのデフォルトキーボード
.emailAddress 電子メールアドレスを入力するために最適化されたキーボード
.namePhonePad 人の名前または電話番号を入力するためのキーパッド
.numberPad テンキーパッド
.numbersAndPunctuation 数字と句読点のキーボード

枠線のスタイル(borderStyle)

値 説明
.bezel 立体的な四角い枠線
.line 四角い枠線
.none 枠線なし
.roundedRect 角丸の枠線

改行キータイプ(returnKeyType)

値 説明
.continue Continue(続ける)
.default return(改行)
.done Done(完了)
.emergencyCall EmergencyCall(緊急電話)
.go Go(開く)
.google Search(検索)
.join Join(接続)
.next Next(次へ)

クリアボタン表示指定(clearButtonMode)

値 説明
.always 常に表示
.never 表示しない
.unlessEditing 入力されたテキストがあり、フォーカスが当たっていない時に表示
.whileEditing 入力されたテキストがあり、フォーカスが当たっている時に表示

動作環境:Xcode10.0, Swift4.2

この記事をシェアする

コメント

コメントはありません。

down コメントを残す