2011-12-30 26 views
10

Después de ajustar el matiz de un UISearchBar a White:¿Cómo eliminar la línea negra adicional debajo de UISearchBar?

enter image description here

Hay una línea de negro extra entre el cuadro de búsqueda y la tabla:

enter image description here

¿Cómo puedo eliminar el negro ¿línea?

+0

tienen que borró fondo de la barra de búsqueda? – Maulik

+0

'searchBar.backgroundColor = [UIColor clearColor];' no ayuda. – ohho

+0

Posible duplicado de [Personalizar UISearchBar: tratando de deshacerse de la línea negra 1px debajo de la barra de búsqueda] (http://stackoverflow.com/questions/7620564/customize-uisearchbar-trying-to-get-rid-of-the -1px-black-line-underneath-the-se) – CMash

Respuesta

27

Sólo un pellizco ...

searchBar.layer.borderWidth = 1; 
searchBar.layer.borderColor = [[UIColor whiteColor] CGColor]; 
0

realizo Legolas respuesta es viejo - pero me topé con el mismo problema, y ​​ahora parece que en lugar de un borderColor es una vista actuación especial como una sombra que crea este efecto

La única forma de corregir esto es buscar una vista llamada "_UISearchBarShadowView" y ocultarla.

Es una subvista de una subvista de searchDisplayController.searchResultsTableView y solo existe después de escribir un carácter en la barra de búsqueda. Solucioné el problema con el código a continuación.

(getSubviewByClass es una categoría de UIView creé colocar a través de puntos de vista y encontrar subvistas por una cadena)

- (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText { 

    [self performSelector:@selector(searchResultsTableShouldChange) withObject:nil afterDelay:0.0001]; 

} 

- (void)searchResultsTableShouldChange { 

    [[self.view getSubviewByClass:@"_UISearchBarShadowView"] setHidden:YES]; 
} 
+0

No hay tal cosa como el método getSubviewByClass: en la clase base UIView. – DZenBot

+0

Es por eso que escribí sobre él entre paréntesis encima del código de ejemplo. Es una categoría que creé para facilitar la realización de búsquedas recursivas en UIViews. – Filibustr

+0

¿No es esto una "solución" si quiere que su aplicación sea rechazada? –

Cuestiones relacionadas