Ios 从UITextField导航到UITextView

Ios 从UITextField导航到UITextView,ios,objective-c,ios6,Ios,Objective C,Ios6,我有一个问题,当我点击按键“下一步”将光标从文本字段移动到文本视图 首先,一切都好。但在第二行中,光标跳到textView的第二行,然后每次我从TextField中单击Next,textView中的光标将再向下移动一行。嗯,这个问题似乎很有趣。在大多数情况下,光标从一个TextField跳到另一个TextField。在这里,您需要将编辑从一个文本字段跳到另一个文本视图,因此您可以尝试以下方法: 首先,在viewcontroller.h中,为textView和TextField创建出口,例如 @p

我有一个问题,当我点击按键“下一步”将光标从文本字段移动到文本视图


首先,一切都好。但在第二行中,光标跳到textView的第二行,然后每次我从TextField中单击Next,textView中的光标将再向下移动一行。

嗯,这个问题似乎很有趣。在大多数情况下,光标从一个TextField跳到另一个TextField。在这里,您需要将编辑从一个文本字段跳到另一个文本视图,因此您可以尝试以下方法:

首先,在
viewcontroller.h
中,为textView和TextField创建出口,例如

@property (strong, nonatomic) IBOutlet UITextView *textView;
@property (strong, nonatomic) IBOutlet UITextField *textField;
viewcontroller.m
执行以下操作:

 -(BOOL) textFieldShouldReturn:(UITextField *)textField
   {      
        if(textField isFirstResponder)
        {
            [textField resignFirstResponder];
            [textView becomeFirstResponder];
        }
        return YES;
    }
编辑: 如果该方法无法按预期工作,则将进行更改: "


(老实说,我不知道这个0延迟的performSelector是如何解决这个问题的,但是这个解决方案对OP有效。感谢Luong Anh的评论。)

你只需要把
[yourtextView becomeFirstResponder];

在您的
textFieldShouldReturn
方法中。

您在说什么“下一步”呢?您好j0k:我在TextFieldreturn的keypard上将“Return”键设置为“next”键返回
。真的很不象可可:D@Daij-Djan完成..并且可以自由编辑。乐于助人的即兴创作总是值得欣赏的:-)谢谢微,我也试着这样做,但结果没有改变。一位朋友告诉我更改1一行并成功,但我仍然不知道结果如何正常-(BOOL)textField应该返回:(UITextField*)textField{if(textField是第一响应者){[textField resignFirstResponder];[textview performSelector:@selector(becomeFirstResponder)withObject:nil afterDelay:0.0];}return TRUE;}@LuongAnh嗯,我没有测试我的代码及其输出..很高兴知道延迟起了作用..如果您允许,我可以用您的提示改进答案吗?所以它可以帮助任何未来的访问者…或者你可以用同样的方法编辑我的答案。“你觉得怎么样?”朗安编辑了我的答案。谢谢你的评论
-(BOOL) textFieldShouldReturn:(UITextField *)textField
{
    if(textField isFirstResponder)
    {
        [textField resignFirstResponder];
        [textview performSelector:@selector(becomeFirstResponder) withObject:nil afterDelay:0.0];
    }
    return YES;
}