ios – 麻烦拍摄成为一些用户不显示键盘的第一响应

我有一个TextView,应该按下按钮显示,让用户通过键盘输入文本.
- (IBAction) changeName {

    changeNameBtn.hidden = YES;
    backBtn.hidden = YES;

    usernameLabel.hidden = NO;
    inputTextField.hidden = NO;
    [inputTextField becomeFirstResponder]; // to show keyboard
}

这对我们大多数人来说很好.

但是键盘在一些地理位置偏远的地方没有显示给我的一些测试人员.怎么麻烦拍这个?什么可能是我们的设备的不同行为的原因?它对我和其他人都很好.我们都使用相同的设备(iPod,iOS 4.1 – 5.1).

我尝试的第一件事情没有起作用:

我猜到inputTextField在某种程度上不会及时变得可见,之后才会被启动,因此我添加了setNeedsDisplay,因为我认为这将强制更新.

[inputTextField setNeedsDisplay];
[inputTextField becomeFirstResponder];

我尝试的第二件事情没有起作用:

if([inputTextField canBecomeFirstResponder]){
    [inputTextField becomeFirstResponder];
}

我尝试的第三件事是解决办法,要求不幸的用户按字段:

- (IBAction) inputTextFieldTouch {
    [inputTextField becomeFirstResponder];
}

解决方法

有效,但必须有更好的方法.请告诉我我做错了什么! :)如何处理这样的问题,而不能自己复制?

解决方法

当您尝试使其成为第一反应者时,textview尚未完成绘制.

您可以尝试动画化外观,并在完成块中设置第一个响应者.

[UIView animateWithDuration:0.0 animations:^{
   [view addSubview:textView];
} completion:^(BOOL finished){
   [textView becomeFirstResponder];
}];

以上是来客网为你收集整理的ios – 麻烦拍摄成为一些用户不显示键盘的第一响应全部内容,希望文章能够帮你解决ios – 麻烦拍摄成为一些用户不显示键盘的第一响应所遇到的程序开发问题。

如果觉得来客网网站内容还不错,欢迎将来客网网站推荐给程序员好友。