回答
搜索栏实际上并不在 '俯卧撑' 动画中移动。相反,当导航栏上升时,它会保持原位,从而将剩下的视图与它拉开。您应该可以通过注册代理(UISearchBarDelegate)并响应这些调用来在代码中手动移动搜索栏。
#pragma mark - UISearchBarDelegate Methods
- (BOOL)searchBarShouldBeginEditing:(UISearchBar *)searchBar {
//move the search bar up to the correct location eg
[UIView animateWithDuration:.4
animations:^{
searchBar.frame = CGRectMake(searchBar.frame.origin.x,
0,
searchBar.frame.size.width,
searchBar.frame.size.height);
}
completion:^(BOOL finished){
//whatever else you may need to do
}];
}
- (BOOL)searchBarShouldEndEditing:(UISearchBar *)searchBar {
//move the search bar down to the correct location eg
[UIView animateWithDuration:.4
animations:^{
searchBar.frame = CGRectMake(searchBar.frame.origin.x,
/*SearchBar original Y*/,
searchBar.frame.size.width,
searchBar.frame.size.height);
}
completion:^(BOOL finished){
//whatever else you may need to do
}];
}
在您的问题的第一张图片中,您显示的是正在使用的UISearchDisplayController。为了获得精确的动画,您需要使用UISearchDisplayController并将其修改为UISearchBar,使其看起来像您制作的自定义动画。您可以在Interface Builder中拖动UISearchDisplayController,然后使用代码更改其searchBar属性。
self.searchDisplayController.searchbar
将被修改,如果你已经在Interface Builder中正确连接了所有东西。
实现一个UISearchBar
和UISearchDisplayController
下苹果的指导方针,最好的办法是看所谓TableSearch的例子中,描述说:
演示如何搜索使用 的UISearchBar和UISearchDisplayController一个UITableView中的内容,在 中进行有效筛选,然后输出该表的内容。如果iPhone/iPod Touch 应用程序具有大量的表格数据,则此示例说明如果 将内容过滤到可管理的数量(如果内存使用情况值得关注)或 您只希望用户滚动浏览较少的表格内容。
我希望这可以帮助你。
嗨猫王感谢您的答案,我一直在使用搜索显示控制器。 – Desmond
这是我五小时前回答的问题 –
- 1. java.util.PriorityQueue的元素在poll上不会向上移动
- 2. 当键盘可见时,ScrollView不会自动向上移动
- 3. getstram.io更新活动不会将其向上移动
- 4. DIV不会随着jQuery向下移动
- 5. 向上移动UIToolbar
- 6. 按下UP键时Pong Paddle底部不会向上移动
- 7. 当导航栏消失时,UIStepper不会向上移动
- 8. textView自动向上移动
- 9. UISearchBar不会删除UISearchBarBackground
- 10. 移动滚动条向上或向下
- 11. 引导:NAV-切换不会向右移动导航栏和品牌不会向左移动
- 12. UIPanGestureRecognizer不会向右平移
- 13. offlineaduiocontext.resume()不会在移动Safari上触发
- 14. 文字不会移动到图像上
- 15. 移除tableView上的UISearchBar点击
- 16. JLabel不会移动
- 17. 标志不会向左或向右移动内部头标记
- 18. 图像上的对象在图像移动时不会移动
- 19. ScrollView内容向上移动
- 20. CSS - 文本向上移动
- 21. 将文字向上移动?
- 22. Java向上移动窗口
- 23. 向上移动TreeViewItem层次
- 24. 视图已向上移动!
- 25. 将UILabel向上移动NSTimer
- 26. slideToggle将div向上移动
- 27. loadNibNamed,视图向上移动?
- 28. 滚动条向右移动而不是向左移动
- 29. 列表移动向上和向下移动
- 30. Mootools可排序 - 向上/向下移动
请详细说明问题我不理解你的问题 –
嗨维杰,当我点击搜索栏时,它应该像第一张图片一样推高。但是我的搜索栏(第二张图片)推高了导航栏,但没有移动到顶部 – Desmond
应该推高什么?键盘?我仍然不明白你的问题。 – Robert