vous pouvez changer l'arrière-plan UISearchBar
en utilisant ce code ci-dessous ..
for (UIView *subview in searchBar.subviews) {
if ([subview isKindOfClass:NSClassFromString(@"UISearchBarBackground")]) {
UIView *bg = [[UIView alloc] initWithFrame:subview.frame];
bg.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"SkyBackground.jpeg"]];
[searchBar insertSubview:bg aboveSubview:subview];
[subview removeFromSuperview];
break;
}
}
De ce code, vous pouvez définir l'image ou toute autre chose pour le fond de UISearchBar
.
Voir aussi ma cette réponse avec une autre fonctionnalité pour modifier la mise en page des composants searchbar .. How to change inside background color of UISearchBar component on iOS
MISE À JOUR:
pour changer l'apparence de bouton Annuler utiliser ce code ci-dessous ...
UIButton *cancelButton = nil;
for(UIView *subView in searchBar.subviews)
{
if([subView isKindOfClass:[UIButton class]])
{
cancelButton = (UIButton*)subView;
//do something here with this cancel Button
}
}
il change l'arrière-plan, mais la taille et textfield et la loupe et le bouton annuler sont toujours là. C'est pourquoi je voulais un champ de texte personnalisé pour agir comme UIseachBar – Nil
il suffit de définir l'arrière-plan tout effacer et aussi pas capable d'afficher le bouton Annuler .. Means activé = NON –
juste comme juste [searchBar setShowsCancelButton: NO]; Utilisez cette ligne pour masquer le bouton Annuler et juste faire quelque chose avec ce code, vous obtiendrez la sortie que vous voulez ,,, voir aussi ma réponse que je poste le lien ci-dessus .. vous pouvez obtenir quelque chose de cela .. espérons que cela vous a aidé. –