博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
修改UISearchBar背景颜色
阅读量:6090 次
发布时间:2019-06-20

本文共 3326 字,大约阅读时间需要 11 分钟。

UISearchBar是由两个subView组成的,一个是UISearchBarBackGround,另一个是UITextField. 要IB中没有直接操作背景的属性。方法一:是直接将 UISearchBarBackGround移去。方法二:是创建一个UIView设置其颜色加载到UISearchBarBaceGround上作为UISearchBar的背景颜色

 

方法一:

 

UISearchBar *seachBar=[[UISearchBar alloc] init];

 

//修改搜索框背景

 

seachBar.backgroundColor=[UIColor clearColor];

 

//去掉搜索框背景

 

//1.

 

[[searchbar.subviews objectAtIndex:0]removeFromSuperview];

 

//2.

 

for (UIView *subview in seachBar.subviews)

 

{

 

if ([subview isKindOfClass:NSClassFromString(@"UISearchBarBackground")])

 

{

 

[subview removeFromSuperview];

 

break;

 

}

 

}

 

//3自定义背景

 

UIImageView *imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"40-di.png"]];

 

[mySearchBar insertSubview:imageView atIndex:1];

 

[imageView release];

 

//4输入搜索文字时隐藏搜索按钮,清空时显示

 

- (BOOL)searchBarShouldBeginEditing:(UISearchBar *)searchBar {

 

searchBar.showsScopeBar = YES;

 

[searchBar sizeToFit];

 

[searchBar setShowsCancelButton:YES animated:YES];

 

return YES;

 

}

 

- (BOOL)searchBarShouldEndEditing:(UISearchBar *)searchBar {

 

searchBar.showsScopeBar = NO;

 

[searchBar sizeToFit];

 

[searchBar setShowsCancelButton:NO animated:YES];

 

return YES;

 

}

 

//改变搜索按钮文字

 

//改变UISearchBar取消按钮字体

 

for(id cc in [searchBar subviews])

 

{

 

if([cc isKindOfClass:[UIButton class]])

 

{

 

UIButton *btn = (UIButton *)cc;

 

[btn setTitle:@"搜索" forState:UIControlStateNormal];

 

}

 

方法二:

 

     

修改UISearchBar背景颜色

UISearchBar是由两个subView组成的,一个是UISearchBarBackGround,另一个是UITextField. 要IB中没有直接操作背景的属性。方法一:是直接将 UISearchBarBackGround移去。方法二:是创建一个UIView设置其颜色加载到UISearchBarBaceGround上作为UISearchBar的背景颜色

 

方法一:

 

UISearchBar *seachBar=[[UISearchBar alloc] init];

 

//修改搜索框背景

 

seachBar.backgroundColor=[UIColor clearColor];

 

//去掉搜索框背景

 

//1.

 

[[searchbar.subviews objectAtIndex:0]removeFromSuperview];

 

//2.

 

for (UIView *subview in seachBar.subviews)

 

{

 

if ([subview isKindOfClass:NSClassFromString(@"UISearchBarBackground")])

 

{

 

[subview removeFromSuperview];

 

break;

 

}

 

}

 

//3自定义背景

 

UIImageView *imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"40-di.png"]];

 

[mySearchBar insertSubview:imageView atIndex:1];

 

[imageView release];

 

//4输入搜索文字时隐藏搜索按钮,清空时显示

 

- (BOOL)searchBarShouldBeginEditing:(UISearchBar *)searchBar {

 

searchBar.showsScopeBar = YES;

 

[searchBar sizeToFit];

 

[searchBar setShowsCancelButton:YES animated:YES];

 

return YES;

 

}

 

- (BOOL)searchBarShouldEndEditing:(UISearchBar *)searchBar {

 

searchBar.showsScopeBar = NO;

 

[searchBar sizeToFit];

 

[searchBar setShowsCancelButton:NO animated:YES];

 

return YES;

 

}

 

//改变搜索按钮文字

 

//改变UISearchBar取消按钮字体

 

for(id cc in [searchBar subviews])

 

{

 

if([cc isKindOfClass:[UIButton class]])

 

{

 

UIButton *btn = (UIButton *)cc;

 

[btn setTitle:@"搜索" forState:UIControlStateNormal];

 

}

 

 

 

 

 

 

 

方法二:

 

UISearchBar* m_searchBar = [[UISearchBar alloc] initWithFrame:CGRectMake(0, 44, 320, 41)];

 

m_searchBar.delegate = self;

 

m_searchBar.barStyle =UIBarStyleBlackTranslucent;

 

m_searchBar.autocorrectionType = UITextAutocorrectionTypeNo;

 

m_searchBar.autocapitalizationType = UITextAutocapitalizationTypeNone;

 

m_searchBar.placeholder = _(@"Search");

 

m_searchBar.keyboardType = UIKeyboardTypeDefault;

 

//--->背景图片

 

UIView *segment = [m_searchBar.subviews objectAtIndex:0];

 

UIImageView *bgImage = [[UIImageView alloc] initWithImage: [UIImageimageNamed:@"Images/search_bar_bg.png"]];

 

[segment addSubview: bgImage];

 

 

 

//<---背景图片

 

[self.view addSubview:m_searchBar];

 

[m_searchBar release];

转载于:https://www.cnblogs.com/56ik/p/5121612.html

你可能感兴趣的文章
tomcat多应用之间如何共享jar
查看>>
Flex前后台交互,service层调用后台服务的简单封装
查看>>
MySQL入门12-数据类型
查看>>
Windows Azure 保留已存在的虚拟网络外网IP(云服务)
查看>>
修改字符集
查看>>
HackTheGame 攻略 - 第四关
查看>>
js删除数组元素
查看>>
带空格文件名的处理(find xargs grep ..etc)
查看>>
centos使用docker下安装mysql并配置、nginx
查看>>
需要学的东西
查看>>
Linux 获取文件夹下的所有文件
查看>>
对 Sea.js 进行配置(一) seajs.config
查看>>
第六周
查看>>
解释一下 P/NP/NP-Complete/NP-Hard 等问题
查看>>
javafx for android or ios ?
查看>>
微软职位内部推荐-Senior Software Engineer II-Sharepoint
查看>>
sql 字符串操作
查看>>
【转】Android布局优化之ViewStub
查看>>
网络安全管理技术作业-SNMP实验报告
查看>>
根据Uri获取文件的绝对路径
查看>>