IOS 开发之UISearchBar 详解及实例

IOS UISearchBar 详解

iPhone开发之UISearchBar学习是本文要学习的内容,主要介绍了UISearchBar的使用,不多说,我们先来看详细内容。关于UISearchBar的一些问题。

1、修改UISearchBar的背景颜色

UISearchBar是由两个subView组成的,一个是UISearchBarBackGround,另一个是UITextField. 要IB中没有直接操作背景的属性。方法是直接将 UISearchBarBackGround移去

seachBar=[[UISearchBar alloc] init];
seachBar.backgroundColor=[UIColor clearColor];
for (UIView *subview in seachBar.subviews)
{
if ([subview isKindOfClass:NSClassFromString(@"UISearchBarBackground")])
    {
[subview removeFromSuperview];
break;
}
}

第二种解决的方法:

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

2、

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;
//为UISearchBar添加背景图片
UIView *segment = [m_searchBar.subviews objectAtIndex:0];
UIImageView *bgImage = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"Images/search_bar_bg.png"]];
[segment addSubview: bgImage];
//<---背景图片
[self.view addSubview:m_searchBar];
[m_searchBar release];

3:取消UISearchBar调用的键盘

[searchBar resignFirstResponder]; 

添加UISearchBar的两种方法:

代码

UISearchBar *mySearchBar = [[UISearchBar alloc]
initWithFrame:CGRectMake(0.0, 0.0, self.view.bounds.size.width, 45)];
 mySearchBar.delegate = self;
 mySearchBar.showsCancelButton = NO;
 mySearchBar.barStyle=UIBarStyleDefault;
 mySearchBar.placeholder=@"Enter Name or Categary";
mySearchBar.keyboardType=UIKeyboardTypeNamePhonePad;
[self.view addSubview:mySearchBar];
 [mySearchBar release];

在 tableview上添加:

代码

 //add Table
    UITableView *myBeaconsTableView = [[UITableView alloc]
                      initWithFrame:CGRectMake(0, 0, self.view.bounds.size.width, self.view.bounds.size.height-40)
                       style:UITableViewStylePlain];
    myBeaconsTableView.backgroundColor = [UIColor whiteColor];
    myBeaconsTableView.delegate=self;
    myBeaconsTableView.dataSource=self;
    [myBeaconsTableView setRowHeight:40];
    // Add searchbar
    searchBar = [[UISearchBar alloc] initWithFrame:CGRectMake(0.0, 0.0, self.view.bounds.size.width, 40)];
    searchBar.placeholder=@"Enter Name";
    searchBar.delegate = self;
    myBeaconsTableView.tableHeaderView = searchBar;
    searchBar.autocorrectionType = UITextAutocorrectionTypeNo;
    searchBar.autocapitalizationType = UITextAutocapitalizationTypeNone;
    [searchBar release];
    [self.view addSubview:myBeaconsTableView];
    [myBeaconsTableView release];

小结:iPhone开发之UISearchBar学习的内容介绍完了,希望本文对你有所帮助

(0)

相关推荐

  • IOS改变UISearchBar中搜索框的高度

    一.系统的searchBar 1.UISearchBar的中子控件及其布局 UIView(直接子控件) frame 等于 searchBar的bounds,view的子控件及其布局 UISearchBarBackground(间接子控件) frame 等于searchBar的bounds UISearchBarTextField(间接子控件) frame.origin等于(8.0, 6.0),即不等于searchBar的bounds 2.改变searchBar的frame只会影响其中搜索框的宽度

  • iOS中的UISearchBar搜索框组件基础使用指南

    UISearchBar也是iOS开发常用控件之一,点进去看看里面的属性barStyle.text.placeholder等等.但是这些属性显然不足矣满足我们的开发需求.比如:修改placeholder的颜色.修改UISearchBar上面的UITextfield的背景颜色.修改UITextfield上面的照片等等. 为了实现上述的需求,最好写一个UISearchBar的子类就叫LSSearchBar吧 LSSearchBar.h如下: 复制代码 代码如下: #import <UIKit/UIKi

  • iOS中使用UISearchBar控件限制输入字数的实现方法

    废话不多说了,直接给大家上关键代码了,具体代码如下所述: - (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText // called when text changes (including clear) { if (searchBar.text.length > IMPUT_MAX){ searchBar.text = [searchBar.text substringToIndex:15]

  • iOS App开发中UISearchBar搜索栏组件的基本用法整理

    基本属性 复制代码 代码如下: @UISearchBar search = [[UISearchBar alloc]initWithFrame:CGRectMake(0,44,320,120)]; pragma mark -基本设置 复制代码 代码如下: //控件的样式 默认--0白色,1是黑色风格 /* UIBarStyleDefault          = 0, UIBarStyleBlack            = 1, search.barStyle =UIBarStyleDefau

  • iOS中修改UISearchBar圆角的小技巧分享

    前言 在我们日常开发中,经常会遇到一些需求非要把 UISearchBar 默认的圆角矩形的圆角改大,顶端改成圆形的.虽然系统没有提供这个 API,不过还是有一个简单方法可以解决. 解决方法: 首先在 UIView 的 category 里加一个方法: UIView+Utils.m - (UIView*)subViewOfClassName:(NSString*)className { for (UIView* subView in self.subviews) { if ([NSStringFr

  • IOS开发代码分享之设置UISearchBar的背景颜色

    今天用到UISearchBar,之前网上提供的方法已经不能有效的去除掉它的背景色了,修改背景色方法如下: mySearchBar.backgroundColor = RGBACOLOR(249,249,249,1);     mySearchBar.backgroundImage = [self imageWithColor:[UIColor clearColor] size:mySearchBar.bounds.size];   //取消searchbar背景色 - (UIImage *)im

  • IOS 开发之UISearchBar 详解及实例

    IOS UISearchBar 详解 iPhone开发之UISearchBar学习是本文要学习的内容,主要介绍了UISearchBar的使用,不多说,我们先来看详细内容.关于UISearchBar的一些问题. 1.修改UISearchBar的背景颜色 UISearchBar是由两个subView组成的,一个是UISearchBarBackGround,另一个是UITextField. 要IB中没有直接操作背景的属性.方法是直接将 UISearchBarBackGround移去 seachBar=

  • iOS开发之UITableView详解

    一.UITableView基本介绍 默认的UITableView有2种风格: UITableViewStylePlain(不分组) UITableViewStyleGrouped(分组) UITableView中的数据只有行的概念,没有列的概念,UITableView的每行数据就是一个UITableViewCell. 自带的UITableViewCell的类型选择有: 复制代码 代码如下: typedef NS_ENUM(NSInteger, UITableViewCellStyle) {   

  • iOS开发之UIScrollView详解

    介绍:UIScrollView用于在一个小范围里显示很大的内容的控件.通过用户平滑.手捏手势,在这个小区域里查看不同内容.是UITableView和UITextView的父类.它是视图,但是比较特殊,可以看成把它看成2层的结构.上面是它的frame层,跟一般试图一样,是它的可见区域,下面层是contentView,可以滑动. 父类UIView方法 复制代码 代码如下: // autoresizingMask - 现在基本弃用,改用autoLayout typedef NS_OPTIONS(NSU

  • IOS 开发之swift中手势的实例详解

    IOS 开发之swift中手势的实例详解 手势操作主要包括如下几类 手势 属性 说明 点击 UITapGestureRecognizer numberOfTapsRequired:点击的次数:numberOfTouchesRequired:点击时有手指数量 设置属性 numberOfTapsRequired 可以实现单击,或双击的效果 滑动 UISwipeGestureRecognizer direction:滑动方向 direction 滑动方向分为上Up.下Down.左Left.右Right

  • IOS 开发之PickerView自定义视图的实例详解

    IOS 开发之PickerView自定义视图的实例详解 例如选择国家,左边是名称右边是国家,不应该使用两列,而是自定义PickerView的一列,可以通过xib来实现. 注意,虽然PickerView也是一列,但是数据源方法是@required,所以必须实现. 因此,核心思想就是一列,自定义PickerView的行视图. 使用viewForRow方法可以设定行视图. 这样的视图可以通过xib和它的控制器进行封装: Xib的控制器继承自UIView类即可. 控制器维护一个用于设置数据的模型对象fl

  • Android开发之AppWidget详解

    Android通知系统是它的一大特色,而其中,AppWidget是其中一个亮点.在开发应用的中,很多时候可以为其添加一个AppWidget显示在桌面中,及时方便的与用户进行 交互.这里就简单的熟悉一下开发一个AppWidget的流程吧. 想要在应用中创建一个AppWidget,至少需要以下几样东西: 需要创建一个AppWidgetProviderInfo,来描述AppWidget的元数据. 需要实现一个自己的AppWidgetProvider对AppWidget进行更新等操作. 需要布局文件来描

  • Java微服务开发之Swagger详解

    目录 一.Swagger的作用和概念 1.Swagger 的优势 2.SwaggerUI 特点 2.SpringBoot集成Swagger 3.配置Swagger 4.实体配置 5.其他皮肤 一.Swagger的作用和概念 ​ 官方地址:https://swagger.io/ ​ Swagger 是一个规范且完整的框架,用于生成.描述.调用和可视化 RESTful 风格的 Web 服务以及 集成Swagger自动生成API文档. ​ Swagger 的目标是对 REST API 定义一个标准且和

  • IOS Object-C 中Runtime详解及实例代码

    IOS Object-C 中Runtime详解 最近了解了一下OC的Runtime,真的是OC中很强大的一个机制,看起来比较底层,但其实可以有很多活用的方式. 什么是Runtime 我们虽然是用Objective-C写的代码,其实在运行过程中都会被转化成C代码去执行.比如说OC的方法调用都会转成C函数 id objc_msgSend ( id self, SEL op, - ); 而OC中的对象其实在Runtime中都会用结构体来表示,这个结构体中包含了类名.成员变量列表.方法列表.协议列表.缓

  • IOS React Native FlexBox详解及实例

    IOS React Native FlexBox详解及资料整理, # 前言 学习本系列内容需要具备一定 HTML 开发基础,没有基础的朋友可以先转至 HTML 学习 本人接触 React Native 时间并不是特别长,所以对其中的内容和性质了解可能会有所偏差,在学习中如果有错会及时修改内容,也欢迎万能的朋友们批评指出,谢谢 文章第一版出自简书,如果出现图片或页面显示问题,烦请转至 简书 查看 也希望喜欢的朋友可以点赞,谢谢 什么是 FlexBox 布局 在 html 中,界面的搭建都是采用 C

  • Android开发之Activity详解

    [Activity] 一个Activity是一个应用程序组件,提供一个屏幕,用户可以用来交互为了完成某项任务,例如拨号.拍照.发送email.看地图.每一个activity被给予一个窗口,在上面可以绘制用户接口.窗口通常充满屏幕,但也可以小于屏幕而浮于其它窗口之上. 一个应用程序通常由多个activities组成,他们通常是松耦合关系.通常,一个应用程序中的activity被指定为"main"activity,当第一次启动应用程序的时候呈现给用户的那个activity.每一个activ

随机推荐