klc*_*r89 12 objective-c uiview uisearchbar ios ios7
我试图弄清楚如何在我的应用程序中为我的UISearchBar添加1像素笔触灰色边框.Facebook Messenger应用程序完成了这一点.(见下图).
我知道有的UISearchBar的背景图像属性,但我相信,这是不使用正确的事,因为它延伸出来的图像和整个搜索栏的整个视图重复它.
我非常感谢指向正确方向的指针.

iOS*_*Dev 12
试试这段代码:
//First add the following import and macro:
#import <QuartzCore/QuartzCore.h>
#define SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(v) ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] != NSOrderedAscending)
//Then change yourSearchBar border:
if (SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"7.0"))
{
for (id object in [[[yourSearchBar subviews] objectAtIndex:0] subviews])
{
if ([object isKindOfClass:[UITextField class]])
{
UITextField *textFieldObject = (UITextField *)object;
textFieldObject.layer.borderColor = [[UIColor grayColor] CGColor];
textFieldObject.layer.borderWidth = 1.0;
break;
}
}
}
else
{
for (id object in [yourSearchBar subviews])
{
if ([object isKindOfClass:[UITextField class]])
{
UITextField *textFieldObject = (UITextField *)object;
textFieldObject.layer.borderColor = [[UIColor grayColor] CGColor];
textFieldObject.layer.borderWidth = 1.0;
break;
}
}
}
Run Code Online (Sandbox Code Playgroud)
Yar*_*Bai 10
Swift 3版
override func viewDidLoad() {
super.viewDidLoad()
for s in searchBar.subviews[0].subviews {
if s is UITextField {
s.layer.borderWidth = 1.0
s.layer.borderColor = UIColor.gray.cgColor
}
}
}
Run Code Online (Sandbox Code Playgroud)
要使其四舍五入,您可以使用textField.layer.cornerRadius属性
| 归档时间: |
|
| 查看次数: |
6924 次 |
| 最近记录: |