2

私のビューには次が含まれています:

first name ( UITextField )
last name  ( UITextField )
email      ( UITextField )
note       ( UITextView )

画像は以下です ここに画像の説明を入力

以下のコードは、リターンキーを入力したときに処理するために使用されます

- (BOOL)textFieldShouldReturn:(UITextField *)textField {    // invoked when user hits return of keyboard from a text field
    if ( textField      ==  self.firstName)
        [self.lastName becomeFirstResponder];
    else if (textField  == self.lastName)
        [self.email becomeFirstResponder];
    else if (textField  == self.email) {
        [self.note becomeFirstResponder];
    }

    return YES;

}

emailフィールドにいてヒットすると、次のように 2 行目nextに着地しnoteます (水色のカーソルは 2 行目にあります)。 ここに画像の説明を入力

理解できません。カーソルが の最初の行にある必要がありますnote

この問題について何か考えはありますか?

4

2 に答える 2

5

次の平和なコードが機能するかどうかはまだわかりません(申し訳ありません)...しかし、試してみてください...

カーソルの位置を変更する:

notetextView.editable = YES;
notetextView.selectedRange = NSMakeRange(2, 0);//i have put in as 2,you can change the location based on your requirent.

あなたの問題は奇妙に見え、あなたの質問に賛成票を投じたので、上記のコードがうまくいかない場合は他の人が答えることができます...

于 2013-09-19T04:23:46.750 に答える
3

メール本文がreturnの場合はreturn NOと書く。このコードを試してください。

- (BOOL)textFieldShouldReturn:(UITextField *)textField {    // invoked when user hits return of keyboard from a text field
    if ( textField      ==  self.firstName)
        [self.lastName becomeFirstResponder];
    else if (textField  == self.lastName)
        [self.email becomeFirstResponder];
    else if (textField  == self.email) {
        [self.note becomeFirstResponder];
        return NO; 
    }

    return YES;
}
于 2016-06-01T13:15:22.340 に答える