2011-06-01 109 views
0

viewdidload方法中,我通过以下方式将我的一个文本字段指定为第一响应者。iPhone键盘没有响应

[txtUsername becomeFirstResponder]; 

当视图被加载时,文本字段变为活动状态并出现键盘。但是当我尝试在键盘上打字时,它没有响应。但是,当我触摸文本字段时,键盘正确响应。我不知道这有什么问题。任何人都可以给我一个建议吗?

在此先感谢 - Abilash

回答

2

调用becomeFirstResponderviewDidLoad是不是一个好主意,因为该视图甚至可能不是视图层次的屏幕部分上呢。

尝试调用viewDidAppear:代替becomeFirstResponder

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

    [txtUsername becomeFirstResponder]; 
} 
+0

感谢您的建议。我在viewDidAppear中添加了becomeFirstResponder。但这并没有解决我的问题。仍然是同样的事情发生。 – Abilash 2011-06-01 13:38:22

0

检查,如果有奥特莱斯在您的viewDidLoad任何建筑,可能是你设置tetUsername作为第一个响应后,他们中的一些被调用。 迈克韦勒的答案也是这种问题最常见的情况。