4

こんにちは、iOS初心者です。

私は自分のプロジェクトでいくつかのテキスト フィールドを使用しているので、いずれかのテキスト フィールドの編集にbecomeFirstResponderを使用したいと考えています。xcode 3.2.5では問題なく動作していますが、 xcode 4.2.1では問題が発生します。

Xcode 4.2.1では、 becomeFirstResponderを呼び出した後、テキスト フィールドを編集できませんでした。仮想キーボードが表示され、キーをタップできましたが、タップされたキーはテキスト フィールドに入力されません。

私を助けてください。

4

1 に答える 1

14

まず、このデリゲートをインターフェイスに追加します。

 @interface yourViewController : UIViewController<UITextFieldDelegate>

xib から使用する場合は、UITextField を右クリックし、デリゲートをファイル所有者にバインドするか、viewDidLoad のメソッドにこのコードを追加します。

  yourTextField.delegate = self;

UITextField のデリゲートを追加すると、呼び出されます

 - (BOOL)textFieldShouldReturn:(UITextField *)textField //resign first responder for textfield 
 {
    [textField resignFirstResponder];
    return YES;
 }

 - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
 {
   return YES;
 }
于 2012-08-27T11:47:19.100 に答える