5

UITextViewがあり、編集可能なオプションをチェックしたくないのですが、ボタンを使用してキーボードを呼び出すにはどうすればよいですか?このコードは私には機能しません!

-(IBAction) yourButtonClick
{
    [myTextView becomeFirstResponder];
    [self.view addSubview:myTextView]; 
}
4

1 に答える 1

23

iPhoneアプリケーションプログラミングガイドから

ただし、編集可能なテキストビューのbecomeFirstResponderメソッドを呼び出すことにより、そのビューのキーボードをプログラムで表示できます。このメソッドを呼び出すと、ターゲットビューが最初のレスポンダーになり、ユーザーがビューをタップしたかのように編集プロセスが開始されます。

したがって、プログラムでキーボードを表示するには、

[textView becomeFirstResponder];

ただし、textViewが編集可能でない場合、キーボードは表示されません。

キーボードを表示する目的は、編集できるようにすることです。ユーザーがテキストビューをタップしたときにキーボードが表示されないようにするだけだと思います。この場合、ボタンをタップしたときにプログラムで編集可能にすることができます。

-(IBAction) yourButtonClick
{
     myText.editable = YES;
     [myText becomeFirstResponder];

}

次に、UITextViewDelegateで、ユーザーが編集を終了したときに編集可能を無効にします。

- (void)textViewDidEndEditing:(UITextView *)textView {
  textView.editable = NO;
}
于 2010-05-01T15:29:47.790 に答える