我为UISearchBar设置了默认背景图片:
[[UISearchBar appearance]setSearchFieldBackgroundImage:[UIImage imageNamed:@"search_field"] forState:UIControlStateNormal];
然后我将UISearchBar设置为导航栏的titleView。
UIView *searchView = [[UIView alloc]initWithFrame:CGRectMake(0, 0, 200, 35)];
lsearchBar = [[TestSearchBar alloc]initWithFrame:searchView.frame];
[searchView setBackgroundColor:[UIColor clearColor]];
[searchView addSubview:lsearchBar];
但是搜索栏的压缩图形结果看起来很糟糕:
如果尝试直接嵌入它而不直接使用UIView,就像这样:
lessonsSearchBar = [[TestSearchBar alloc] initWithFrame:CGRectMake(0, 0, 200, 35)];
self.navigationItem.titleView = lessonsSearchBar;
它看起来更好,但是当我将segue推送到下一个视图控制器,或者用动画回弹时,它会尝试为它设置动画并且看起来很糟糕,周围有这个灰色条:
我在UIView中尝试它,因为我还想为我的UISearchBar设置一个自定义大小并将其重新排列到屏幕的左侧,当我将搜索栏直接设置为navitationItem时,由于某种原因这是不允许的.titleView。我不确定如何在不崩溃我的图像(我使用setSearchFieldBackgroundImage设置)或没有动画的故障的情况下实现这一目的。你能帮忙吗?