2017-03-07 26 views
0

Ich habe ein Problem mit einer UISearchBar. Im Storyboard ist der Bar-Farbton auf clearColor, der Suchstil auf Minimal und der Bar-Stil auf Standard eingestellt. Ich habe auch ein benutzerdefiniertes Hintergrundbild. Dies istiOS - UISearchBar Textfeld Hintergrund schwarz auf Fokus

, wie es wie standardmäßig aussieht, wenn die Ansicht zuerst geladen wird: enter image description here

Das ist genau, wie ich will es sein.

Nun, wenn ich auf sie drücken einen Text eingeben, hier ist was passiert:

enter image description here

Der Hintergrund schwarz wird. Wenn ich die Suche abbringe oder stoppe, geht es perfekt zum Bild Nummer eins zurück. Ich habe viele Dinge ausprobiert, alles im Code eingestellt, aber ich kann diesen schwarzen Hintergrund nicht ändern. Ich möchte einfach, dass es klare Farbe ist.

Antwort

1

Es scheint gesetzt durch klare bare Tönung Color.There besteht keine Notwendigkeit, bar Tönungsfarbe zu setzen, wie freie Farbe es .set als Standard.

+0

Es ändert sich nichts traurig. –

+0

Ohhh..Ich habe die gleiche Eigenschaft festgelegt und es funktioniert für mich. – Donal

+0

@bloemy Haben Sie die Translucent-Eigenschaft aktiviert? – Donal

0

versuchen, diesen Code auf viewDidLoad

self.searchController.searchBar.barStyle = UIBarStyleBlack; 
self.searchController.searchBar.translucent = YES; 

und ich fand, dass in UISearchController sie diese Eigenschaft haben, kann die Vorlage UISearchBar beeinflussen.

@property (nonatomic, assign) BOOL dimsBackgroundDuringPresentation __TVOS_PROHIBITED; // default is YES, and has the same behavior as obscuresBackgroundDuringPresentation. 
@property (nonatomic, assign) BOOL obscuresBackgroundDuringPresentation NS_AVAILABLE_IOS(9_1); // default is YES 

versuchen, sie zu NO auch wie schwarzem Hintergrund

self.searchController.dimsBackgroundDuringPresentation = NO; 
self.searchController.obscuresBackgroundDuringPresentation = NO; 
0

Eigentlich Die UISearchBar bieten Methode zum Festlegen des Hintergrunds von Textfeld in der Suchleiste. Es ist:

- (void) setSearchFieldBackgroundImage: (nurable UIImage *) backgroundImage forState: (UIControlState) Zustand NS_AVAILABLE_IOS (5_0) UI_APPEARANCE_SELECTOR;

Sie können es verwenden, um jedes mögliches Bild zu setzen.

Verwandte Themen