【iOS 开发】搜索栏控件 UISearchBar
目录
- iOS 搜索栏控件 UISearchBar
- 1. UISearchBar 使用
- 2. UISearchBarDelegate 协议详解
- 附 Github 源码:
iOS 搜索栏控件 UISearchBar
1. UISearchBar 使用
// 创建 UISearchBar
let searchBar = UISearchBar(frame: CGRect(x: 15, y: 1400, width: 350, height: 150))// 设置 UISearchBar 风格
searchBar.searchBarStyle = UISearchBar.Style.minimal // 极简风格// 设置 UISearchBar 风格颜色
// searchBar.barTintColor = UIColor.cyan
// 设置 UISearchBar 背景图片
// searchBar.backgroundImage = UIImage(named: "demo")// 设置 UISearchBar 提示文字
searchBar.placeholder = "请输入关键字"// 设置 UISearchBar 标题
searchBar.prompt = "搜索框控件标题"// 显示 UISearchBar 右侧取消按钮
searchBar.showsCancelButton = true// 显示 UISearchBar 书库按钮
searchBar.showsBookmarkButton = true// 显示 UISearchBar 搜索结果按钮
searchBar.showsSearchResultsButton = false// 设置 UISearchBar 显示附件视图
searchBar.showsScopeBar = true// 设置 UISearchBar 附件视图的标题
searchBar.scopeButtonTitles = ["综合", "销量", "价格", "筛选"]// 设置 UISearchBar 附件视图默认选中的索引
searchBar.selectedScopeButtonIndex = 1// 设置协议
searchBar.delegate = selfscrollView.addSubview(searchBar)
效果展示:
2. UISearchBarDelegate 协议详解
// 搜索栏将要开始编辑时回调,返回 true 允许进入编辑态,否则不允许
func searchBarShouldBeginEditing(_ searchBar: UISearchBar) -> Bool {print("searchBarShouldBeginEditing")return true
}// 搜索栏已经开始编辑时回调
func searchBarTextDidBeginEditing(_ searchBar: UISearchBar) {print("searchBarTextDidBeginEditing")
}// 搜索栏将要结束编辑时回调,返回 true 允许结束编辑态,否则不允许
func searchBarShouldEndEditing(_ searchBar: UISearchBar) -> Bool {print("searchBarShouldEndEditing")return true
}// 搜索栏已经结束编辑时回调
func searchBarTextDidEndEditing(_ searchBar: UISearchBar) {print("searchBarTextDidEndEditing")
}// 搜索栏的文本发生变化时回调。非常重要
func searchBar(_ searchBar: UISearchBar, textDidChange searchText: String) {print("searchBar, searchText: \(searchText)")
}// 搜索栏的文本将要发生变化时回调,返回 false 则此次修改无效
func searchBar(_ searchBar: UISearchBar, shouldChangeTextIn range: NSRange, replacementText text: String) -> Bool {print("searchBar, replacementText: \(text)")return true
}// 点击键盘上的搜索按钮时回调
func searchBarSearchButtonClicked(_ searchBar: UISearchBar) {print("searchBarSearchButtonClicked")
}// 点击搜索栏的书库按钮时回调
func searchBarBookmarkButtonClicked(_ searchBar: UISearchBar) {print("searchBarBookmarkButtonClicked")
}// 点击搜索栏的取消按钮时回调
func searchBarCancelButtonClicked(_ searchBar: UISearchBar) {print("searchBarCancelButtonClicked")
}// 点击搜索栏的搜索结果按钮时回调
func searchBarResultsListButtonClicked(_ searchBar: UISearchBar) {print("searchBarResultsListButtonClicked")
}// 点击搜索栏的附件视图上的选项按钮时回调
func searchBar(_ searchBar: UISearchBar, selectedScopeButtonIndexDidChange selectedScope: Int) {print("searchBar, selectedScopeButtonIndexDidChange: \(selectedScope)")
}
日志打印:
附 Github 源码:
ViewController.swift
【iOS 开发】搜索栏控件 UISearchBar相关推荐
- iOS开发--UIKit控件之UISearchBar(搜索栏)
今天因为需求原因,需要用到搜索控件:之前一直没有用到过这个控件,所以去百度了一下,找到一篇可以说很齐全的资料,感谢这位作者. 然而,我并没有找到可以更改字体大小的属性或方法,希望有知道的告诉我一声,谢 ...
- iOS开发图片控件(ImageView)绑定代码并显示一张图片
我在之前的一篇博客<iOS中如何显示一张图片>中谈到如何使用Image View来显示图片,这个操作是直接在Main.storyboard实现的.也就是说这张图片是写死在界面中了.但是在以 ...
- IOS开发UIScrollView控件详解
首先实现UIScrollViewDelegate协议: [plain] view plaincopy #import <UIKit/UIKit.h> @interface Activity ...
- IOS开发UI控件UIScrollView和Delegate的使用
1. 什么是UIScrollView 移动设备的屏幕大小是极其有限的,因此直接展示在用户眼前的内容也相当有限 当展示的内容较多,超出一个屏幕时,用户可通过滚动手势来查看屏幕以外的内容 普通的UIVie ...
- iOS开发 ---- 其他控件,弹窗,滑块,菊花,步进,分段等
UIControlHub UISwitch 开关 1. 继承于UIControl 默认大小事79*27 2. 一般通过center属性来设位置 3. tintColor 边框的颜色 4. onTint ...
- iOS开发-UI控件:UIImagePickerController 视频录制操作,视频大小,时间长度
转自: http://www.cnblogs.com/cocoajin/p/3494290.html 简介: 使用 iOS 系统 UIImagePickerController 获取视频大小 获取视频 ...
- 从0到1搭建移动App功能自动化测试平台(2):操作iOS应用的控件
转载:http://debugtalk.com/post/build-app-automated-test-platform-from-0-to-1-Appium-interrogate-iOS-UI ...
- android 仿照ios 图片选择,GitHub - wildma/PictureSelector: Android 图片选择器(仿 IOS 图片选择控件)...
PictureSelector Android 图片选择器(仿 IOS 图片选择控件) 效果图 功能特点 支持通过拍照获取图片 支持通过相册获取图片 支持图片是否裁剪两种场景 支持仿 IOS 底部弹出 ...
- C#进行MapX二次开发之控件基本操作
上篇介绍了MapX的部分基本使用代码,包括放大.缩小.缩放到初始大小(全图).平移.矩形选择.圆形选择.箭头.打开图层对话框 .打开ActiveX属性对话框 .添加符号等基本操作代码,本篇继续探讨一些 ...
最新文章
- 自动驾驶公交车开上苏州街头,这次不是“试运营”了,市民乘车依然免费
- 很牛逼的短链接,我们一起来晒晒短链接程序(转)
- Hash散列算法解析
- java递归算法实现
- Extjs4 MVC 添加view层
- ubuntu 安装 php
- 077 Combinations 组合
- python创建和控制的实体称为_Python eds包_程序模块 - PyPI - Python中文网
- 传递情感贺卡海报,你知道怎么设计么?让设计更简单,从临摹PSD模板开始
- 怎么取消打开文件的安全警告?
- 抓包分析数据帧中IP数据包的一些关键字段【南邮网课例题】
- 高速缓存(cache)原理
- The eighth of Word-Day
- 苹果官方mfi认证名单_【大型推销配件现场】苹果回应iPhone12消磁,这波操作太6了 - 社会...
- 配置软路由-同时连接内网和外网
- unicode编码 中文标点符号
- 自助广告插件系统 7.4版本 高颜值网站广告代码
- 【MM表】MARD VS S032
- 人工雨量计_新型人工观测报警雨量计 型号:XYL-6
- 电大计算机本科考试试题,电大计算机考试本科试题电大计算机考试本科试题.doc...
热门文章
- ROBOTSTUDIO中基础术语、在线功能
- n76e885_N76E885AT20_(NUVOTON(新唐))N76E885AT20中文资料_价格_PDF手册-立创电子商城
- maven快速入门第十四讲——nexus私服简介及安装
- android zalo 分享sdk_zalo安卓版
- python微博涨粉_爬取微博用户公开信息,分析为周杰伦打榜的夕阳红老年团,告诉你他们真实年龄!...
- 一文了解Zipkin
- Halcon算子总结
- Spring Security跨站请求伪造(CSRF)
- 浅谈淘宝类目属性体系:商品搜索背后的逻辑架构
- Oracle P6软件计划编制时的组织机构