0

我正在尝试为表格设置搜索栏,所以任何人都可以告诉我,当表格向上/向上滚动时是否可以使用 uisearchabr,而对于其他情况,搜索栏不会出现在屏幕上。可能吗?如果是,那么如何?

先感谢您

4

3 回答 3

0

您可以实现 scrollViewDelegatescrollViewDidScroll并检查contentOffset显示/隐藏搜索栏。由于 table view 是 的子类UIScrollView,因此您可以依赖此委托方法来决定何时显示/隐藏它。

基本上当contentOffset代表向上滚动的位置时,您可以显示此搜索栏,当contentOffset值开始更改时,您可以隐藏搜索栏。使用搜索栏的隐藏属性来显示/隐藏它。你也可以使用removeFromSuperView/addSubview方法。

于 2012-12-27T08:46:42.547 回答
0

您可以使用以下代码或概念。概念在滚动视图委托功能中,您将检查内容偏移量并在表格视图标题中显示设置的搜索栏对象。

代码 :

//MARK: -UIScrollViewDelegate
- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate{
    if (scrollView.contentOffset.y <= - 65.0f) {
        [self.tableView setTableHeaderView:self.searchBar];
    }
}
于 2012-12-27T09:38:54.440 回答
-1

制作委托UIScrollViewDelegate并实现其委托方法,在此当您开始滚动表格然后取消隐藏您的 searchBar 并更改 tableView 的框架。

-(void)scrollViewDidScroll:(UIScrollView *)scrollView
{
    [mySearchBar setHidden:NO];
    [quotesTableView setFrame:CGRectMake(0, 44, 320, 416)];
}
于 2012-12-27T08:48:12.750 回答