1

我有一个UISearchBar我想定制的外观。这篇文章中的建议在更新到 iOS 7 之前有效。但现在我不知道该怎么做。我主要想自定义取消按钮。有人知道怎么做吗?

4

1 回答 1

2

您需要递归搜索按钮。这应该是一种故障安全的方法:

- (void)viewDidLoad
{
    [super viewDidLoad];

    [self convertButtonTitle:@"Cancel" toTitle:@"Annuller" inView:self.searchBar];
}

- (void)convertButtonTitle:(NSString *)from toTitle:(NSString *)to inView:(UIView *)view
{
    if ([view isKindOfClass:[UIButton class]])
    {
        UIButton *button = (UIButton *)view;
        if ([[button titleForState:UIControlStateNormal] isEqualToString:from])
        {
            [button setTitle:to forState:UIControlStateNormal];
        }
    }

    for (UIView *subview in view.subviews)
    {
        [self convertButtonTitle:from toTitle:to inView:subview];
    }
}

我仅在 iOS 7 上对此进行了测试,但它也可以在 iOS 6 上运行并且应该这样做。

于 2013-09-24T13:07:38.503 回答