将UISearchBar背景更改为自定义图像的正确方法是什么?

时间:2012-06-18 20:04:20

标签: ios objective-c iphone uisearchbar

我知道之前有人问这个,我找到了这个解决方案:

for (UIView *subview in searchBar.subviews) {
    if ([subview isKindOfClass:NSClassFromString(@"UISearchBarBackground")]) {
        UIView *bg = [[UIView alloc] initWithFrame:subview.frame];
        bg.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"top-bar.png"]];
        [searchBar insertSubview:bg aboveSubview:subview];
        [subview removeFromSuperview];
        break;
    }
}

我只是不确定它是否包含苹果拒绝的某些私有API,还是有更好的方法来执行此操作?

  • 我仍然支持ios 4,所以没有ios 5只有API

1 个答案:

答案 0 :(得分:1)

Apple不鼓励使用私人无证件api的人。

但您仍然可以在应用程序中使用子类化功能。我使用过这种子类UISearchBarBackground。 Apple接受了我的实时应用程序。因此,在您的应用程序中使用上述代码没有问题。