当键盘出现时,键盘会让UIView慢慢变亮?

时间:2012-01-05 01:46:05

标签: iphone objective-c cocoa-touch uitextfield becomefirstresponder

我有一个动作,允许我呈现一个ModalViewController并显示UITextField作为第一响应者,问题是当这个ModalViewController出现时需要一点时间,原因是键盘,当我抓住代码到viewDidAppear键盘需要一点时间才能显示出来,那么我怎样才能让UIViewController快速启动呢?

- (IBAction)goToModalViewController
{    
    ModalSearchViewController *msvc = [[ModalSearchViewController alloc] init];
    self.msvc.context = context;
    self.msvc.delegate = self;
    [self.msvc setModalTransitionStyle:UIModalTransitionStyleCrossDissolve ];                                                                                                                                                                                                                                                                                                                                                       
    [self presentModalViewController:msvc animated:YES];
}

ModalViewController的viewWillAppear:

- (void)viewWillAppear:(BOOL)animated
{
   [super viewWillAppear:YES];

   [findTextField becomeFirstResponder]; 
}

1 个答案:

答案 0 :(得分:1)

viewWillAppear中尝试这样做。

- (void)viewWillAppear:(BOOL)animated
{
    [super viewWillAppear:animated];

    //[findTextField becomeFirstResponder]; 
    [findTextField performSelector:@selector(becomeFirstResponder) withObject:nil afterDelay:0.3];
}