【发布时间】:2012-02-16 12:32:20
【问题描述】:
我在创建模拟天气应用程序行为的模式搜索视图时遇到了问题。具体来说,有两个动画让我感到困扰并引入了不必要的 0.2 秒延迟:
当模态视图变得可见时,我通过在
viewDidAppear中调用 becomeFirstResponder 将焦点放在UISearchDisplayController.searchBar上。但是,当模态视图滑入时,键盘是不可见的,但在模态视图过渡动画完成后还需要0.2s才能滑入。将呼叫转移到另一个回调,如viewWillAppear或viewDidLoad没有好处,键盘一开始就不会出现。当用户触摸取消时,会在调用代理的
searchDisplayControllerDidEndSearch方法之前发生另一个动画,扩展搜索文本字段并“融化”按钮。同样,这个动画是非内联的,因为模态视图应该在按钮被触摸时转出。此外,当我关闭并重新呈现相同的视图时,不仅键盘会在转换后滑入,而且取消按钮也会这样做(幸运的是同时)。
我知道这里描述的类似问题:Keyboard Animation Issues When Calling becomeFirstResponder within a Modal View Controller。
但是,搜索栏的行为似乎与文本字段的行为略有不同。我无法重现该作者描述的通过在viewDidLoad 中调用becomeFirstResponder 使键盘可见的步骤。
问候, 克里斯
【问题讨论】:
标签: objective-c ios uisearchbar uisearchdisplaycontroller becomefirstresponder