修改系统UISearchBar搜索框的样式-搜索图片、背景颜色

本文介绍了如何修改iOS系统的UISearchBar,包括设置搜索框内的搜索图标以及自定义背景颜色,同时提到了设置取消按钮的代理方法来实现更多定制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

修改系统搜索框
这里写图片描述

//searchbar

    //设置背景图是为了去掉上下黑线
    self.searchBar.backgroundImage = [[UIImage alloc] init];
    // 设置SearchBar的颜色主题为白色
    self.searchBar.barTintColor = [UIColor whiteColor];
    self.searchBar.backgroundColor = [UIColor whiteColor];
    self.searchBar.frame = CGRectMake( 0, self.bgImageView.bottom, __kScreenWidth, 40);
    self.searchBar.placeholder = @"输入名称搜索,如:京东";

    [self.searchBar setImage:[UIImage imageNamed:@"salecard_search"]forSearchBarIcon:UISearchBarIconSearch state:UIControlStateNormal];
    [self.view addSubview:self.searchBar];

另设置搜索框取消按钮代理方法

#pragma mark 搜索框的代理方法,搜索输入框获得焦点(聚焦)  
-(void)searchBarTextDidBeginEditing:(UISearchBar *)searchBar  
{  
    [searchBar setShowsCancelButton:YES animated:YES];  

    // 修改UISearchBar右侧的取消按钮文字颜色及背景图片  
    for (UIView *searchbuttons in [searchBar subviews]){  
        if ([searchbuttons isKindOfClass:[UIButton class]]) {  
            UIButton *cancelButton = (UIButton*)searchbuttons;  
            // 修改文字颜色  
            [cancelButton setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];  
            [cancelButton setTitleColor:[UIColor whiteColor] forState:UIControlStateHighlighted];  

            // 修改按钮背景  
            [cancelButton setBackgroundImage:[UIImage resizedImage:@"login_btn_login.png"] forState:UIControlStateNormal];  
            [cancelButton setBackgroundImage:nil forState:UIControlStateHighlighted];  
        }  
    }  
}  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值