2017-03-24 9 views
0

周りのクリック可能なラベルを追加する私はUILabelUITextFieldUIViewを持っている:どのようにUITextFieldの

+--------------+ 
| label  | 
|    | 
| +-----------+| 
| | textField || 
| +-----------+| 
+--------------+ 

私はlabelに触れたときにtextFieldを選択するか、注目したいです。

答えて

1
UIControlにあなたのコンテナ UIViewを変更し、 ViewController.viewDidLoadに次のように追加し

textFieldContainer.addTarget(textField, 
     action: #selector(becomeFirstResponder), 
     for: .touchUpInside) 

これはtextField

+2

また、コンテナビューで 'UITapGestureRecognizer'を使用してください。 – rmaddy

+0

@rmaddyの単純さの点では、これはGestureRecogよりも良い選択ではないでしょうか? – Jay

+0

@Jayそれはきれいではありません。 UITapGestureRecognizerを追加するコードの量は同じですが、複数のジェスチャを処理し、同じビューでより多くの制御を行うことができ、コードがよりクリーンで読みやすくなるという利点があります。 –

1

1を集中するtextFieldContainertouchUpInsideイベントが発生します:Add a UITapGestureRecognizer to your UILabelたりUIViewなどあなたが望む

2:タップジェスチャーからのアクションを処理してstart editingタップのテキストフィールド。

UILabelをuserInteractionEnabled = に設定することを忘れないでください。ラベルにタップジェスチャーを追加する場合は、を入力してください。

関連する問題