Ios5 如何在从情节提要加载时隐藏UISearchbar

Ios5 如何在从情节提要加载时隐藏UISearchbar,ios5,uisearchbar,xcode-storyboard,Ios5,Uisearchbar,Xcode Storyboard,这更多的是表面问题 我已经通过故事板添加了一个搜索栏,我想用故事板隐藏以下内容 我能够做到这一点之前使用的代码,是在故事板进入图片 如果使用故事板可以实现这一点,有人能为我指出正确的方向吗 干杯, Lance在故事板上,选择搜索栏并打开右侧的对象检查器。在他们的网站中,你会发现一个叫做“隐藏”的属性。选中该框,当脚本初始化时,对象将被隐藏 如果按ctrl键从搜索栏中拖动并在视图控制器中创建属性,则可以在代码中控制隐藏标志。因此,您可以在需要时使其重新出现,例如: self.searchbar.h

这更多的是表面问题

我已经通过故事板添加了一个搜索栏,我想用故事板隐藏以下内容

我能够做到这一点之前使用的代码,是在故事板进入图片

如果使用故事板可以实现这一点,有人能为我指出正确的方向吗

干杯,
Lance

在故事板上,选择搜索栏并打开右侧的对象检查器。在他们的网站中,你会发现一个叫做“隐藏”的属性。选中该框,当脚本初始化时,对象将被隐藏

如果按ctrl键从搜索栏中拖动并在视图控制器中创建属性,则可以在代码中控制隐藏标志。因此,您可以在需要时使其重新出现,例如:

self.searchbar.hidden = NO;
2013年1月2日编辑- 这里有一种不同的方法。 检查表:

a) 在情节提要中的tableview标题视图中添加搜索栏。将该搜索栏链接到名为searchBar的属性。当你链接它时,xcode会给它一个弱引用,把弱引用改为强引用。例:

@property (strong, nonatomic) IBOutlet UISearchBar *searchBar; 
b) 添加名为showSearch的BOOL属性来控制搜索栏的显示和隐藏

@property (nonatomic) BOOL showSearch;
c) 将以下方法添加到控制器代码中

- (void)setShowSearch:(BOOL)showSearch {

    _showSearch = showSearch;

    if (! _showSearch) {
        self.tableView.tableHeaderView = nil;
    }
    [self.tableView reloadData];

}

- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection: (NSInteger)section
{
    if (self.showSearch && self.tableView.tableHeaderView == nil) {
        return self.searchBar.frame.size.height;
    }
return 0;
}

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
    if (self.showSearch && self.tableView.tableHeaderView == nil) {
       return self.searchBar;
    }
    return nil;
}
默认情况下,这将从显示的搜索栏开始。如果要从隐藏开始,只需将以下内容添加到viewDidLoad方法:

self.showSearch = NO;

祝你好运,新年快乐

是的,这是可行的,但是tableview不会填满以前由uisearchbar保留的空间。如果您仍在寻找解决方案,我添加了一种不同的方法,应该对您更有效。