如何更改里面的UISearchBar
问题描述:
的UITextField的性能基本上我访问这个URL如何更改里面的UISearchBar
UITextField * textField= self.searchBar.textField;
让我们只说功能.textField并得到文本框。我已经多次验证了这一点。
textField.adjustsFontSizeToFitWidth =true;
textField.minimumFontSize =10;
textField.enablesReturnKeyAutomatically =NO;
我跟着上面的代码。
仍然在self.searchBar中的UITextField在文本太长时不会更改字体大小。
我想知道为什么。
答
尝试让你的文本字段这样的....
UITextField *textField = [searchbar valueForKey:@"_searchField"];
And then customize it according to you.
textField.adjustsFontSizeToFitWidth =true;
textField.minimumFontSize =10;
textField.enablesReturnKeyAutomatically =NO;
+0
我知道如何获得textField。例如,我可以让它正确对齐。但是,我无法使文本字段中的字体自动调整。 –
答
,当你想改变它包含在其他类的实例一些类的实例,您应该尝试使用UIAppearance
实例方法。 (寻找视图层次结构是解决方法)。
[[UITextField appearanceWhenContainedIn:[UISearchBar class], nil] setTextColor:[UIColor blueColor]];
这里在documentation by Apple有很好的解释。
答
试试这个code..This方式可以在里面的UISearchBar更改和管理的UITextField的性能
for (UIView *searchBarSubview in [searchbar subviews])
{
if ([searchBarSubview conformsToProtocol:@protocol(UITextInputTraits)])
{
@try
{
[(UITextField *)searchBarSubview setBorderStyle:UITextBorderStyleRoundedRect];
[[UITextField appearanceWhenContainedIn:[UISearchBar class], nil] setFont:[UIFont fontWithName:@"jots" size:10]];
[[UITextField appearanceWhenContainedIn:[UISearchBar class], nil] adjustsFontSizeToFitWidth];
[[UITextField appearanceWhenContainedIn:[UISearchBar class], nil] enablesReturnKeyAutomatically];
}
@catch (NSException * e)
{
// ignore exception
}
}
}
希望它可以帮助你..
尝试继承'MySearchBar:UISearchBar'和'layoutSubviews'定制方法。 – Akhilrajtr
我应该怎么做? –