Próbuję dostosować pole tekstowe do paska UISearchbar. Poniższy rysunek pokazuje moją połowiczną pracę. Dostosuj UITextfield z UISearchbar - iOS
Mam podklas UISearchbar i wywołałem go z mojego kontrolera widoku. Próbuję usunąć ciemnoszare linie z pola tekstowego. Poniżej znajduje się implementacja paska UISearchbar dodającego do podglądu kontrolera viewcontroller.
searchbar = [[SearchBar alloc] initWithFrame:CGRectMake(35,78, 250, 17)];
searchbar.backgroundColor = [UIColor clearColor];
searchbar.layer.borderColor = [[UIColor clearColor] CGColor];
searchbar.layer.borderWidth = 0;
for(UIView *view in searchbar.subviews){
if([view isKindOfClass:[UITextField class]]){
UITextField *tf= (UITextField *)view;
tf.layer.borderColor = [[UIColor clearColor] CGColor];
tf.delegate = self;
break;
}
}
[self.view addSubview:searchbar];
searchbar.delegate = self;
UISearchBar podklasy:
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
// Initialization code
}
return self;
}
-(void)layoutSubviews{
UITextField *searchField;
[[[self subviews] objectAtIndex:0] removeFromSuperview];
[self setTintColor:[UIColor clearColor]];
self.clipsToBounds = YES;
NSUInteger numViews = [self.subviews count];
for(int i = 0; i < numViews; i++) {
if([[self.subviews objectAtIndex:i] isKindOfClass:[UITextField class]]) {
searchField = [self.subviews objectAtIndex:i];
searchField.leftViewMode = UITextFieldViewModeNever;
searchField.backgroundColor = [UIColor clearColor];
}
}
if(!(searchField == nil)) {
searchField.backgroundColor = [UIColor clearColor];
searchField.textColor = [UIColor blackColor];
searchField.frame = CGRectMake(self.frame.origin.x,self.frame.origin.y,self.frame.size.width,self.frame.size.height-10);
[searchField setBorderStyle:UITextBorderStyleRoundedRect];
}
[super layoutSubviews];
}
Próbuję achive coś takiego: pole tekstowe nie powinny mieć żadnych granic. Ikony są spłaszczone UIImageView.
ikony są częścią UIImageView jak ja powiedziany. To obszar tekstowy, o który się martwię. Te ciemnoszare linie mają zostać usunięte. Dzięki za odpowiedź. Ikony są już usunięte z paska wyszukiwania. – DesperateLearner
dziękuję bardzo Animesh ... rozwiązuje mój problem. – Hari1251
Dziękuję, zapłacę za ciebie piwo pewnego dnia. –