2009-10-13 10 views
5

alt text http://img210.imageshack.us/img210/5992/searchdisplaycontroller.pngPersonalizar UISearchDisplayController

son los siguientes objetos personalizable?

1. Ámbito UISearchBar Botones (UISegmentedController)

2. UIResultsTableView

3. Teclado (al menos por lo que es de color negro)

+0

¿Qué está utilizando para generarlo: una punta o código? – JoePasq

+0

Estoy usando el código. Pude personalizar todo, así que agradezco a todos por su ayuda, sin embargo, no pude eliminar la pregunta. – Mark

Respuesta

1

tuve la oportunidad de personalizar el TableView utilizando el siguiente código:

- (void)searchDisplayController:(UISearchDisplayController *)controller willShowSearchResultsTableView:(UITableView *)tableView { 
tableView.backgroundColor = [UIColor colorWithRed:(19.0/255.0) green:(19.0/255.0) blue:(19.0/255.0) alpha:1.0]; 
tableView.separatorColor = [UIColor blackColor]; } 

Sin embargo, cuando toca el botón Cancelar, la interfaz parpadeará en blanco antes de volver a la vista de tabla original. ¿Cómo se puede arreglar esto?

+0

Tuve que eliminar la imagen de tu publicación porque ImageShack la ha eliminado y la ha sustituido por publicidad. Consulte http://meta.stackexchange.com/q/263771/215468 para obtener más información. Si es posible, sería genial que los vuelvas a subir. ¡Gracias! – Undo

3

alt text http://img527.imageshack.us/img527/9775/searchdisplaycontrollerz.png

que fue capaz de cambiar el control segmentado por una especie de cortar el código:

- (void)searchDisplayControllerWillBeginSearch:(UISearchDisplayController *)controller { 
for (UIView *subview in self.view.subviews) { 
    for (UIView *subview2 in subview.subviews) { 
     if ([subview2 isKindOfClass:[UISegmentedControl class]]) { 
      UISegmentedControl *segmentedControl = (UISegmentedControl *)subview2; 
      segmentedControl.tintColor = [UIColor blackColor]; 
      segmentedControl.segmentedControlStyle = UISegmentedControlStyleBar; 
     }   
    } 
}} 

Sin embargo los botones son enormes, ¿cómo podría arreglarlo por lo que son tan bonita como ¿el original?

1

Nunca fui capaz de obtener botones más pequeños a pesar de probar cada SegmentedControlStyle. Aquí está el código que necesitaba usar para al menos obtener el color del tinte correcto en IOS4:

- (void)searchDisplayControllerWillBeginSearch:(UISearchDisplayController *)controller { 
    static BOOL tintAlreadyChanged = NO; 
    if (tintAlreadyChanged) return; 

    NSLog(@"Searching subViews for UISegmentControl:"); 
    //fix segmented control 
    for (UIView *subview in self.view.subviews) { 
     //NSLog(@"\n\nsubView = %@",subview); 
     for (UIView *subview2 in subview.subviews) { 
      //NSLog(@"subView2 = %@",subview2); 
      for (UIView *subview3 in subview2.subviews) { 
       //NSLog(@"subView3 = %@",subview3); 
       if ([subview3 isKindOfClass:[UISegmentedControl class]]) { 
        NSLog(@"Found UISegment SubView = %@",subview3); 
        UISegmentedControl *segmentedControl = (UISegmentedControl *)subview3; 
        segmentedControl.tintColor = [UIColor blackColor]; 
        segmentedControl.segmentedControlStyle = UISegmentedControlStyleBezeled; 
        tintAlreadyChanged = YES; 
       } 
      }      
     } 
    } 
} 
Cuestiones relacionadas