2017-08-18 7 views
-2

私はUITextFieldオブジェクトを持ち、テキストフィールドから入力を受け取ります。入力の長さが2より短い場合は、テキストフィールドバーに警告記号を表示します。TextFieldと警告

これは不可能ですか?

そうなら、どうすれば対応できますか?

EDIT:

私はちょうどそれを処理していました。私はテキストフィールドにラベルを貼り、自動レイアウトを実行します。次に、私はテキストフィールドの代理人を選択し、プロトコルに準拠してInputViewControllerを作成しました。最後に、私はfunc textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool

+1

「UITextField」ドキュメント(https://developer.apple.com/documentation/uikit/uitextfield)の「オーバーレイビューを使用してコンテンツを編集する」をチェックして、警告サインを表示してください。残りの部分については、テキストの長さについては、 'UITextFieldDelegate'の適切なメソッドを使用してください。 – Larme

+0

@Goktug「テキストフィールドバーにサインインする」とはどういう意味ですか? – Krunal

+0

テキストフィールドの右側のビューまたは左側のビューを実装するか、予想されるデザインイメージを共有しようとします –

答えて

0

UITextFieldDelegateをビューコントローラに実装し、textFieldDidEndEditingを使用してテキストの長さをチェックします。

func textFieldDidEndEditing(_ textField: UITextField) { 
    if let textFieldText = textField.text { 
     print("textFieldText length - \(textFieldText.count)") 
     if (textFieldText.count < 2) { 
      showWarning(message: "Your message here") 
     } 
    } 
} 

func showWarning(message: String?){ 
    // show warning message using UIAlertController here. 
} 
+0

これはテキストフィールドバーに表示されますか? –

+0

@ Anbu.Karthikいいえ、これは一種の警告メッセージ。「テキストフィールドバーで署名する」。 OPと私に確認させてください、私はこの答えを削除する必要があります、それが他の場合。 – Krunal

+0

彼はIQkeyboardmanagerが –

0

あなたはUIViewのから継承されたカスタムクラスを使用して、その中のUITextField(ノーボーダーのスタイル)とアイコニックフォントUILabelをパックすることができます。