1

私のIPadアプリケーションでは、テキスト表示にのみTextViewを使用しています。より大きなテキストを表示する必要があるため、UILabelを使用する代わりにScrollingプロパティのためにUITextviewを使用しています。私のアプリケーションでは、UITextviewでテキストを編集する必要はありませんが、問題は、キーボードをスクロールするためにTextviewをクリックすると、テキストビューが非表示になるため、クリックイベントでキーボードが表示されないようにすることです。検索を行います。しかし、適切な解決策が見つかりません。どんな助けも適用されます。ありがとう

4

2 に答える 2

5

新しい回答(前の回答は正しく機能していませんでした)

スクロールも無効になるため機能しないため、次のことを試してください。

UITextFieldDelegate プロトコルを実装する View Controller にテキストを追加します

@interface YourViewController () <UITextViewDelegate>

viewDidLoad で、デリゲートとして自分自身を設定します。

yourUITextView.delegate = self;

以下のデリゲート メソッドを実装します。

- (BOOL)textViewShouldBeginEditing:(UITextView *)textView
{ 
   return NO; 
}

textview がテキストを編集しようとすると、このメソッドが自動的に呼び出されます。no を返すので、編集は開始されません。

以前の回答からの変更を元に戻すことが非常に重要です。編集可能なフィールドを NO に設定しないでください。

私はそれを試してみましたが、動作しています。それが役に立てば幸い!

古い答え

変数を宣言するとき、または viewdidload メソッドで編集可能なプロパティを NO に設定します。

yourUITextView.editable = NO;

また

[yourUITextView setEditable:NO]

これにより、キーボードが表示されなくなります。

于 2012-07-19T14:29:45.597 に答える
1

.XIBファイルに移動すると、編集可能またはプログラムで動作のチェックを外すことができます

textView.editable = NO;

于 2012-07-19T14:28:24.223 に答える