22

IPad と IPhone の両方の UITextField のタップまたはクリックで UIAlertView を表示しようとしています。IBAction を作成し、UITextField の Tap Down イベントにアタッチします。

しかし、正しく動作しないということは、iPhone の場合は常にではなく、iPad の場合は動作しないことを意味します。

- (IBAction) TopuchState
{
    //function code
}

どうすればこれを行うことができますか。

ここに画像の説明を入力

4

5 に答える 5

29

UITextFieldデリゲートとして既にサブスクライブされているため、次のメソッドを実装します。

- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField {

    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Alert" message:@"Alert Message" delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:@"Ok", nil];
    [alert show];

    return YES;
}
于 2012-04-06T14:53:32.510 に答える
26

特定のテキスト フィールドが編集を開始したときのターゲットを追加してみてください ( UIControlEventEditingDidBegin):

 [textField1 addTarget:delegate action:@selector(textField1Active:) forControlEvents:UIControlEventEditingDidBegin];
于 2012-04-07T06:32:07.420 に答える
4

UITextFieldのデリゲートを設定してメソッドを実装すると、より簡単になると思います。

- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField

次に、そのメソッド内で、を簡単に作成して表示できますUIAlertView

UITextFieldDelegateを見てください。

幸運を!

于 2012-04-06T14:51:36.347 に答える
1

TextField をデリゲートに接続し、この関数を呼び出します!!

-(BOOL)textFieldShouldBeginEditing:(UITextField *)textField {       
   textView.text=@"   ";
   return YES;
}
于 2016-11-25T12:06:04.550 に答える