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 に答える