Wie ändere ich die Hintergrundfarbe von UISearchBar in iOS7?
nicht grau, ich möchte die Farbe wie meine Navigationsleiste ändern
Wenn ich diesen Code verwende, kommt das heraus
searchBar.backgroundColor = [UIColor redColor];
Das ist keine rote Farbe !!! Genau die gleiche Situation wie in der Hintergrundfarbe der Navigationsleiste.
Antworten:
Benötigt werden:
searchBar.barTintColor = [UIColor redColor];
Alles danke!
quelle
[searchbar setTranslucent:NO];
Stellen Sie das Hintergrundbild auf ein klares Bild ein und los geht's. Dies ist auch mit Pre-iOS 7 kompatibel.
searchBar.backgroundImage = [[UIImage alloc] init] searchBar.backgroundColor = [UIColor redColor];
quelle
Wenn die oben genannten Lösungen nicht funktionieren, stellen Sie sicher, dass Sie den Suchleistenstil auf Minimal gesetzt haben .
[self.searchDisplayController.searchBar setSearchBarStyle:UISearchBarStyleMinimal];
Und für einfache Suchleiste
[self.searchBar setSearchBarStyle:UISearchBarStyleMinimal];
Der SearchBar-Stil kann auch vom Interface Builder auf Minimal eingestellt werden .
quelle
Es funktioniert nicht wirklich für mich oder manchmal, wenn Sie es auch versuchen
for (UIView *view in [[filterTextField.subviews objectAtIndex:0] subviews]){ if ([NSStringFromClass([view class]) isEqualToString:@"UISearchBarBackground"]) view.alpha = 0; }
quelle
if ([view isKindOfClass: UISearchBarBackground)
.Wenn die UISearchBar im MainStoryBoard definiert wurde, klicken Sie einfach auf diese UISearchBar und sehen Sie sich die Optionen an, die Sie rechts verarbeiten können. Wenn Sie dort drüben auf die vierte Registerkarte klicken (die wie ein Schild aussieht), haben Sie die Option Balkentönung. Dort können Sie die gewünschte UISearchBar-Farbe auswählen.
Wenn nicht, können Sie programmatisch so etwas tun:
UISearchBar* sb =[[UISearchBar alloc] init]; sb.backgroundColor=[UIColor redColor];
Ich hoffe das hilft!
quelle