Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios7 UISearchBar在事件发生后消失_Ios7_Uisearchbar_Uisearchdisplaycontroller - Fatal编程技术网

Ios7 UISearchBar在事件发生后消失

Ios7 UISearchBar在事件发生后消失,ios7,uisearchbar,uisearchdisplaycontroller,Ios7,Uisearchbar,Uisearchdisplaycontroller,我的视图中有一个UISearchBar,它包含在最顶部单元格上方的UITableView中。在我将新的视图控制器推到导航堆栈上之前,一切正常。一旦我弹出新的VC并返回到原始视图控制器,搜索栏就不会显示在表的顶部。相反,在我的导航栏和我的表视图的顶行之间有一个空白。但是,如果我单击此空白区域,搜索栏将打开,就像它正常存在一样,当我再次单击“取消”时,一切正常 我认为UISearchBar的视图被设置为完全白色,但我不知道为什么。我最初将UISearchBar添加到故事板中,作为UISearchDi

我的视图中有一个UISearchBar,它包含在最顶部单元格上方的UITableView中。在我将新的视图控制器推到导航堆栈上之前,一切正常。一旦我弹出新的VC并返回到原始视图控制器,搜索栏就不会显示在表的顶部。相反,在我的导航栏和我的表视图的顶行之间有一个空白。但是,如果我单击此空白区域,搜索栏将打开,就像它正常存在一样,当我再次单击“取消”时,一切正常


我认为UISearchBar的视图被设置为完全白色,但我不知道为什么。我最初将UISearchBar添加到故事板中,作为UISearchDisplayController的一部分。当我的VC从另一个控制器(而不是被推到导航堆栈上)解绕后,如何防止搜索栏变白?

我也有同样的问题。我认为这与搜索栏的颜色无关,而是与搜索栏子视图的布局有关。经过多次尝试和错误,我提出了以下解决方案:

@interface MySearchBar : UISearchBar
@end

@implementation MySearchBar

-(void) layoutSubviews
{
    [super layoutSubviews];
    if (self.subviews.count == 1)
    {
        UIView *subview = [self.subviews objectAtIndex:0];
        subview.frame = self.bounds;
    }
}

@end
使用MySearchBar而不是UISearchBar