1. ホーム
  2. ios

[解決済み] UITextFieldの編集を無効にして、タッチ操作を受け付けるようにするには?

2022-10-11 14:36:01

質問

私は UITextField を持っている UIPickerView として inputView . ただし、コピー、ペースト、カット、テキスト選択で編集できるので、それは困ります。ピッカーだけがテキストフィールドを変更する必要があります。

を設定することで、編集を無効にできることを知りました。 setEnabled または setUserInteractionEnabled から NO . OKですが、TextFieldがタッチに反応しなくなり、ピッカーが表示されなくなりました。

どうすれば実現できるのでしょうか?

どのように解決するのですか?

テキストフィールドのデリゲートを使用すると、メソッドがあります。

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string

これよりNOを返すと、ユーザがテキストを編集しようとすると拒否されます。

この方法では、フィールドを有効にしたまま、テキストをペーストされるのを防ぐことができます。