można zmienić tło UISearchBar
za pomocą tego kodu miech ..
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;
}
}
Od tego kodu można ustawić zdjęcie lub cokolwiek innego na tle UISearchBar
.
zobaczyć także moje tę odpowiedź z innej funkcji, aby zmienić układ podzespołów searchbar .. How to change inside background color of UISearchBar component on iOS
UPDATE:
zmian Anuluj wygląd przycisk Użyj tego kodu miech ...
UIButton *cancelButton = nil;
for(UIView *subView in searchBar.subviews)
{
if([subView isKindOfClass:[UIButton class]])
{
cancelButton = (UIButton*)subView;
//do something here with this cancel Button
}
}
zmienia tle, ale rozmiar i textField i lupy i przycisk Anuluj wciąż tam są. Dlatego chciałem, aby niestandardowe pole tekstowe działało jak UIseachBar – Nil
po prostu ustaw całe tło jako czyste, a także nie jest w stanie wyświetlić przycisku anulowania ..means enabled = NO –
podobnie jak [searchbar setShowsCancelButton: NO]; użyj tej linii, aby ukryć przycisk anulowania i po prostu zrób coś z tym kodem otrzymasz dane wyjściowe, które chcesz ,,, zobacz także moją odpowiedź, którą zamieszczam link powyżej .. możesz uzyskać coś z tego .. nadzieję, że pomógł ci. . :) –