私の質問は、ユーザーがUITextViewに文字を入力したときにリッスンするイベントリスナーを設定する方法ですか?Swift UITextViewイベントリスナー
textview.hasText()
を使用してテキストがあるかどうかを確認できますが、UITextViewに既にテキストがある場合でも入力した文字を聞く必要があります。
私の質問は、ユーザーがUITextViewに文字を入力したときにリッスンするイベントリスナーを設定する方法ですか?Swift UITextViewイベントリスナー
textview.hasText()
を使用してテキストがあるかどうかを確認できますが、UITextViewに既にテキストがある場合でも入力した文字を聞く必要があります。
UITextViewDelegateをご覧ください。
たとえば、あなたのビューコントローラでUITextViewDelegateプロトコルに準拠してください
@IBOutlet weak var textView: UITextView!;
を持っている場合は、あなたのviewDidLoadメソッドで
はclass ViewController: UIViewController, UITextViewDelegate {
// stuff
}
textView.delegate = self;
は次に何に応じて追加しますあなたが必要とするUITextViewDelegateからメソッドを実装します。例えば
、テキストビューが実装変わったときにあなたが聴きたい場合:Appleのから
func textViewDidChange(textView: UITextView) {
}
:このメソッドを実装しないコメントに反映させるため:
func textViewDidEndEditing(textView: UITextView) {
// your code here.
print(textView.text);
}
を編集しますドキュメント:
デリゲートに、指定されたテキスト ビューがユーザーによって変更されました。
これは近いですが、私は達成する必要があるのはかなり正しいとは思いません。私は 'textViewDidEndEditing()'を聞きたくありません。なぜなら、編集が進行中でキーボードが開いている間は、キーボードが閉じられ、編集が止まったことを意味するからです。 –
Appleのドキュメントを見て、 'textViewDidChange(_ textView:UITextView)'を見つけました。これは私が探しているものかもしれません。 –
私は自分の答えを更新しました。 –
この '' UITextViewプレースホルダの答えは 'UITextViewDelegate' ... http://stackoverflow.com/questions/27652227/text-view-placeholder-swift/28271069#28271069を使用する方法の簡単な機能の一例を提供 – clearlight