0

我想制作一个简单的应用程序,该应用程序在视图顶部有一个带有条形(~50px 高)的表格。该栏将包括一个搜索按钮。按下搜索按钮时,我想用搜索栏替换栏中的视图。我想不出最好的方法来做到这一点。

我在这里有几个选择。我可以以编程方式完成,或者制作每个视图的自定义 .xib 文件并将它们换出。使用自定义 .xib 文件,我不知道如何将功能传递给主 ViewController。

我想在某个地方有一些关于这个的点点滴滴。我想就如何做到这一点的最佳方法获得一些意见。

4

1 回答 1

1

我以这种方式实现了这个功能:

  1. 创建一个 UIToolbar 并将其放在顶部(可以在 Storyboard 中完成),为其创建一个属性
  2. 创建一个 UISearchBar 并将其放置在顶部附近,然后为其创建一个属性并将 isHidden 设置为 true

在您的代码中:

  1. 将 UISearchBar 的框架设置为工具栏的框架。

    [self.searchBar setFrame:self.toolBar.frame];

  2. 在工具栏中创建一个“搜索”按钮,它将设置 searchBar 的 isHidden = NO 和 toolBar 的 isHidden = YES。

  3. 配置 serchBar 的取消按钮以反转两个栏的 isHidden 字段。

这将没有动画。只是一个完整的替换。

要让它动画,使用类似的东西:

[self.searchBar setHidden:NO];
[UIView transitionWithView:self.searchBar duration:0.5 options:UIViewAnimationOptionTransitionFlipFromLeft animations:^{} completion:^(BOOL finished) {
    [self.toolBar setHidden:YES];
}];
于 2013-02-05T03:46:25.783 回答