【问题标题】:becomeFirstResponder slows down appbecomeFirstResponder 减慢应用程序的速度
【发布时间】:2011-04-12 06:13:56
【问题描述】:

我有两个用于用户名和密码的文本字段以及一个提交按钮。当按下提交按钮时,会执行检查以查看是否输入了用户名和密码。如果不是,它会显示一条警报消息,并且未输入值的字段将成为第一响应者。

-(IBAction)loginPressed:(id)sender {


    if ([username.text length] == 0)
    {
        [self showAlert:@"Invalid Username/ Password"];
       [username becomeFirstResponder];
        return;
    }

    if ([password.text length] == 0)
    {
        [self showAlert:@"Invalid Username/ Password"];
      [password becomeFirstResponder];
        return;
    }
}

我观察到单击按钮时,按钮保持选中状态约 1.5 秒,然后显示警报。如果我注释掉 becomeFirstResponder 方法,它会毫无停顿地工作。但是我需要becomeFirstResponder 在那里。我如何使用它来加快速度?

【问题讨论】:

  • 可能很愚蠢的问题:如果切换 becomeFirstResponder 和 showAlert 的顺序会发生什么?
  • 嘿,解决了。现在很好用。谢谢。将其发布为答案。

标签: iphone uitextfield


【解决方案1】:

切换 becomeFirstResponder 和 showAlert 的顺序。

【讨论】:

  • 我有同样的问题,没有警报:(。调用 becomeFirstResponder 的巨大延迟(几秒钟!)。
  • 我也遇到了同样的问题,没有警报 - 只是取消隐藏视图/文本字段,然后调用 becomeFirstResponder。有什么想法吗?
【解决方案2】:

[self showAlert:@"无效的用户名/密码"];需要一些时间。你不能speup那个东西。

【讨论】:

  • 但是根据 OP,如果 becomeFirstResponder 被删除没有延迟,所以显然,showAlert 不是这里的问题。
猜你喜欢
  • 1970-01-01
  • 2021-05-28
  • 2014-09-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-08-02
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多