我有一个表格视图,顶部有一个搜索栏。我的要求是当有人打开页面时不显示搜索栏,但是当有人滑下桌面时,应该可以看到搜索栏。仅当用户将表格下拉时才显示搜索栏
11
A
回答
22
在您的控制器的viewDidAppear:
方法中,设置您的表视图的contentOffset属性(在UIScrollView中)以隐藏搜索栏。
- (void)viewDidAppear:(BOOL)animated{
[super viewDidAppear:animated];
self.tableView.contentOffset = CGPointMake(0, SEARCH_BAR_HEIGHT);
}
4
相关的murat's answer,这里有一个更便携和正确的版本将与动画抵消的观点负载做掉(它假定在搜索栏中有一个名为searchBar
出口属性):
- (void)viewWillAppear:(BOOL)animated
{
self.tableView.contentOffset = CGPointMake(0, self.searchBar.frame.size.height);
}
更新:
为了适应点击索引节中的搜索图标,需要实现以下方法,它将恢复内容偏移:
- (NSInteger)tableView:(UITableView *)tableView sectionForSectionIndexTitle:(NSString *)title
atIndex:(NSInteger)index
{
index--;
if (index < 0) {
[tableView
setContentOffset:CGPointMake(0.0, -tableView.contentInset.top)];
return NSNotFound;
}
return index;
}
相关问题
- 1. 仅当用户空闲X时间时才显示DIV
- 2. 如何在单击搜索栏时显示表格视图?
- 3. 仅当用户需要时才显示Firebase通知
- 4. 仅当isAdmin为真时才显示在线用户
- 5. 仅当用户在特定页面上时才显示部分
- 6. 显示最近搜索的项以下搜索表格
- 7. 如何在用户点击搜索栏时显示tableview
- 8. 仅显示下拉列表中匹配的搜索模式项ajaxToolkit:ListSearchExtender
- 9. Eclipse未显示搜索栏
- 10. 在ipad中使用搜索栏时列表的动态显示
- 11. 当用户向下滚动时显示导航栏 - swift
- 12. 仅当活动未显示时才显示通知
- 13. 搜索显示控制器不显示搜索栏
- 14. 带下拉结果的搜索栏
- 15. 仅当一个单元格为空时创建下拉列表
- 16. 当搜索栏为空或无时,表格为空
- 17. 单击搜索后显示文本框的下拉列表
- 18. 搜索栏和搜索显示控制器搜索后不显示结果
- 19. 搜索下拉
- 20. 谷歌喜欢下拉框当用户搜索
- 21. ShieldUI Grid - 仅在插入时显示下拉列表
- 22. 搜索时显示产品价格
- 23. 隐藏表格视图,并在同一时间显示搜索栏
- 24. 搜索mysqli表格并显示结果
- 25. 搜索栏与搜索栏和搜索显示控制器有什么区别?
- 26. 仅当用户在特定DIV上滚动时才显示chart.js动画
- 27. 仅当用户登录到Facebook时才可以显示Facebook Like Button吗?
- 28. 选择下拉列表显示分格
- 29. SharePoint搜索下拉菜单仅显示此网站作为范围
- 30. 将AD用户显示为HTML页面中的下拉列表
使用viewDidAppear:可以导致contentOffset更改显着发生在应用程序的用户身上。使用viewWillAppear:将在向用户显示任何内容之前进行更改。 – Shoerob
你也可以在'viewDidLoad'中做到这一点,一开始就做一次,并且在返回视图时(例如在'UINavigationController'中),仍然记得你在tableView中的位置。 – devios1