【问题标题】:Keyboard taking FOREVER to popup on iPhone app while Debugging键盘在调试时永远在 iPhone 应用程序上弹出
【发布时间】:2023-03-09 22:56:02
【问题描述】:

在我现在非常基本的应用程序(2 个嵌套的 TableView 菜单和一个预建视图)中,我的预建视图包含 2 个标签、2 个文本字段和 1 个按钮,其行为非常奇怪。 如果我在调试模式下运行并单击其中一个文本字段,则在键盘弹出之前大约需要 10-15 秒,并且在等待它时没有其他工作。
如果我运行 Leaks Performance Tool,应用程序运行起来非常流畅,没有任何问题。

有人见过这个吗?知道为什么会这样做吗?

【问题讨论】:

  • 我假设在发布模式下它对你来说工作得更快?在 iPhone 3G 等旧设备上,键盘并不总是永久加载到内存中,因此在这些情况下,您的应用程序会短暂挂断是正常的。你在什么设备上测试?
  • 现在在原装 iphone 上测试。还没有尝试发布模式,因为我还没有 Apple Developer License。为什么它会在泄漏性能工具中运行得更快?
  • 速度慢是因为您正在通过 Debug 目标,还是因为您正在调用调试器?在 Debug 目标中尝试一个,但执行构建和运行,而不是构建和调试。
  • 如果您已经解决了问题(错误,确定是 Apple 错误),是否愿意用答案来结束这个问题?
  • 问题没有解决。我编辑到原始问题中的内容与问题无关,我应该删除它,我现在已经这样做了。至于键盘速度慢,在 Build and Run 上它更快,但我们说它需要 10 秒而不是 15 秒才能显示出来,所以它仍然无法使用。

标签: iphone objective-c debugging keyboard


【解决方案1】:

我会仔细看看应用程序的内存使用情况。

在显示 KB 时,您是否在应用程序的后台做任何事情?

【讨论】:

    【解决方案2】:

    我遇到了类似的问题!奇怪的是,在后台队列中运行的任务会干扰键盘弹出。这可以通过在 viewWillAppear 中放置以下行来解决,这会导致在加载视图时弹出键盘: [myTextField 成为FirstResponder];

    【讨论】:

      【解决方案3】:

      我认为您不会为该文本字段设置第一响应者。

      验证您对文本字段的第一响应者

      听起来你从其他地方启用了该文本字段。这是最近的。

      确认委托已连接到文本字段的文件所有者

      【讨论】:

        猜你喜欢
        • 2013-04-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多