UISearchbar için metin alanını özelleştirmeye çalışıyorum. Aşağıdaki resim yarım işimi gösteriyor. UISearchbar'ın UITextfield'ı Özelleştir - iOS
UISearchbar'ın alt sınıfları var ve onu görünüm denetleyicimden aradım. Bu koyu gri çizgileri metin alanından kaldırmaya çalışıyorum. Aşağıda, UISearchbar'ın viewcontroller alt görünümüne eklenmesi uygulanmasıdır.
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 alt sınıf: textfield herhangi sınırları olmamalıdır:
- (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];
}
Böyle bir şey başarmak için çalışıyorum. Simgeler UIImageView düzleştirilmiş.
simgeler i gibi UIImageView parçası olan (yukarıda ödünç ve hızlı bir şekilde adapte) yapmak gerekir dedim. Onun için endişelendiğim metin alanı. Bu koyu gri çizgiler kaldırılacak. Cevap tho için teşekkürler. Simgeler zaten arama çubuğundan kaldırılmıştır. – DesperateLearner
Çok teşekkürler Animesh ... sorunumu çözüyor. – Hari1251
Teşekkür ederim, bir gün senin için bira ödeyeceğim. –