从UITextField导航到UITextView

时间:2013-05-16 07:34:41

标签: ios objective-c ios6

当我点击keypard的“Next”按钮将光标从TextField移动到TextView时,我有一个问题

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

2 个答案:

答案 0 :(得分:8)

嗯,问题似乎是一个有趣的问题。在大多数情况下,光标跳转是从一个 TextField 到另一个 TextField 。在这里,您需要将编辑从一个 TextField 跳转到另一个 TextView ,以便您可以尝试此方法:

首先在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;
    }

编辑:  如果方法无法按预期工作,则会进行更改: “

-(BOOL) textFieldShouldReturn:(UITextField *)textField
{
    if(textField isFirstResponder)
    {
        [textField resignFirstResponder];
        [textview performSelector:@selector(becomeFirstResponder) withObject:nil afterDelay:0.0];
    }
    return YES;
}

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

答案 1 :(得分:0)

您只需将[yourtextView becomeFirstResponder]; 放入textFieldShouldReturn方法。