3

これは誰かにとって簡単な質問かもしれません。

キーボードのリターンキーを制御するにはどうすればよいですか。私はこのようなセットアップを1つ持っています:

usernameField.returnKeyType = UIReturnKeyNext;

このような他の:

passwordField.returnKeyType = UIReturnKeyDone;

それぞれに異なるメソッドが必要ですが、必要に応じてtextField.tagのifステートメントで制御することもできます。

次に、UITextField内の閉じるボタンがクリックされたときを制御する(コードを実行する)方法はありますか?フィールド内にテキストがあると、テキストフィールドに表示されるライトxを参照します。これにより、フィールドのデータがクリアされます。または、フィールド内にこの閉じるアイコンを表示しない方法はありますか?

4

2 に答える 2

4

テキストフィールドを確認してから、必要な対応するメソッドを次のように呼び出すことができます。

- (BOOL)textFieldShouldReturn:(UITextField *)textField //or implement - (void)textFieldDidEndEditing:(UITextField *)textField
{
    if (textField == self.usernameField) {
       [self callUserNameMethod];
    } else if (textField == self.passwordField) {
       [self callPasswordMethod];
    }

    [textField resignFirstResponder];
    return YES;
}

質問で述べたように、タグプロパティを使用することもできます。これらのデリゲートを使用する以外に、キーパッドのデフォルトのリターンボタンのタップでメソッドを設定する方法は他にないことに注意してください。キーボードの表示と非表示に使用できる通知があり 、必要に応じて使用できます。

クリアボタンのデリゲートメソッドは、次のように実装できます。

- (BOOL)textFieldShouldClear:(UITextField *)textField {
     //write code to be executed on tap of clear button
     return YES;
}

または、を無効に設定するclearButtonModeこともできます。UITextFieldViewModeNever

于 2013-02-20T23:50:23.763 に答える
1

質問の2番目の部分に答えるには、

usernameField.clearButtonMode = UITextFieldViewModeNever;
于 2013-02-20T23:37:11.340 に答える