怎么把UISearchController的cancel按钮自定义按钮在哪里设置中文取消

搜索框(UISearchController),最近踩过的坑 - 简书
搜索框(UISearchController),最近踩过的坑
有梦就去追!
点击首页的搜索框跳转到新的搜索页面,使新页面的搜索框为编辑状态。搜索框内容为空时,显示搜索的历史记录;内容不为空时,显示搜索结果。搜索结果以两种关键词的方式呈现(例如:商品、商家,当用户搜索肥皂时,选择商品显示的是在售的肥皂,选择商家则显示卖肥皂的店家)。坑点一:新页面回跳,searchBar有闪烁现象
解决思路:猜测应该是searchBar呈现过程中,颜色变换造成的闪烁
解决方案:去除searchBar中的中间层的UIView(查资料所得,具体地址未记录,原作者请见谅)
for (UIView *view in self.searchController.searchBar.subviews) {.
//self.searchController.searchBar 更改为自己的searchBar
// for later iOS7.0(include)
if ([view isKindOfClass:NSClassFromString(@"UIView")] && view.subviews.count & 0) {
[[view.subviews objectAtIndex:0] removeFromSuperview];
坑点二:跳转到新页面使searchBar成为第一响应者的时间点问题
解决思路:延迟设置,使searchBar必定能成为第一响应者
解决方案:当页面出现后再延迟设置(来自)
- (void)viewDidAppear:(BOOL)animated {
[super viewDidAppear:animated];
[self performSelector:@selector(showKeyboard) withObject:nil afterDelay:0];
- (void)showKeyboard {
[self.searchController.searchBar becomeFirstResponder];
坑点三:UISearchController中的searchBar的cancel按钮问题
需求方案一:修改cancel按钮文字,监听按钮点击事件
效果:自带的cancel按钮点击后会消失,编辑时又出现,个人感觉不怎么样
来源:CocoaChina上的某一篇问答中,具体未查找到,请原作者勿怪
self.searchController.searchBar.showsCancelButton = YES;
//这个必须设置,不然无法达到效果,具体原因未知(猜测是需要设置显示才能拿到按钮)
UIButton *canceLBtn = [self.searchController.searchBar valueForKey:@"cancelButton"];
[canceLBtn setTitle:@"搜索" forState:UIControlStateNormal];
[canceLBtn setTitleColor:[UIColor colorWithRed:0.965 green:0.290 blue:0.608 alpha:1.00] forState:UIControlStateNormal];
//设置颜色自便,也可添加点击事件响应
需求方案二:隐藏cancel按钮,自己写按钮
效果:效果挺不错,看着舒服多了
//重写UISearchController中的代理方法,设置不显示cancelBtn
//我尝试过很多地方写隐藏cancel,不过只有这边管用,应该这边触发的最晚,所以成功了
- (void)didPresentSearchController:(UISearchController *)searchController {
searchController.searchBar.showsCancelButton = NO;
这篇文章主要讲的是使用searchController中searchBar时,我遇到的情况。上面需求中,历史记录和搜索结果的切换我也碰到了一些问题,会在后续文章中写到。
在此非常感谢大家的浏览,我也希望大家有遇到比较奇葩的、好玩的、有趣的、或者有用的,也可以与我分享,我的邮箱!
与大家共勉,一起在梦想的路上前行,谢谢!
工作了好久一直很忙,好不容易有些时间,今天有人问我如何开始写一个项目,不禁回忆起自己写第一个项目的时候,到现在,突然感觉自己写的好多都是在重复,有些感想,特此写下这篇文章,给想入这行的新手们一些参考 1.写项目之前首先我们要确定需求,明确项目需要实现哪些功能(吐槽下:好多项...
一、搜索功能我相信很多app都用得上,iOS系统提供做搜索的类有那几种呢? 1.UISearchBar,这个相信大多数开发者都用过,这个只是提供搜索框,其实就是跟一个UITextField没啥区别,只是在textfield封装了多点内容。 2.UISearchDisplay...
UISearchBar属性相关 _searchBar = [[UISearchBar alloc] initWithFrame:CGRectZero];// 初始化,不解释[self.searchBar setPlaceholder:@&Search&];// 搜索框的占位...
UISearchBar和UISearchDisplayController配合使用,是iOS8之前的使用方法,iOS8以后使用UISearchController,更方便简单。 遵守协议 @property(nonatomic,strong)UISearchControll...
案例: 质量经理定期会发送给各个相关部门质量问题处理周报,里面包含质量问题,负责人,原因分析及改进措施等内容。今天他发送的周报里面有个负责人写错人了。 被负责人的这个人收到这种群发周报邮件后大概有以下几种处理方式。 1.不管不问。周报是给人看的,这种周报中张冠李戴的问题对自...
貌似从学生时代开始,学习就成了最重要的东西,真实地在为他人价值观而活,渐渐成为一个表现型,太过关注他人的看法,而没有自我的坚守。大学时,看不到学习的意义,在颓烂中自我责厌,靠着心理学完成了一点点自我接纳和自我认知。毕业后,挂科没证闲了一年,不敢面对现实,失去了对死的恐惧,却...
http://www.jianshu.com/p/cb5?utm_campaign=hugo&utm_medium=reader_share&utm_content=note&utm_source=weixin-friends&from=groupmess...
遇到失败,不要悲伤;遇到挫折,不要彷徨;坚持理想,明天就有希望;坚持信仰,未来就在前方。从容面对阻挡,成功之帆启航!准备18考研中山大学药学的同学们,你们是否收集好该学院所有的考研信息了呢,收集好这些信息也是成功的一步哦!聚英考研网建议大家赶紧收集吧!越早做准备对于备考复习...
吊兰是常见的家庭绿植,多年生常绿,具有很高的观赏价值和空气净化能力。在吊兰养殖过程中,经常会遇到吊兰叶子发黄枯萎的问题,那么遇到吊兰叶子发黄我们该怎么处理呢?首先要了解吊兰叶子发黄的原因,再征对行解决。 一、吊兰叶子发黄的常见原因分析 1、施肥过多:造成的肥害。吊兰施肥过多...UISearchController使用方法及注意事项
我的图书馆
UISearchController使用方法及注意事项
在进行ios开发的时候,有时候涉及到搜索功能,实现搜索功能的方法有很多,可以是用自定义的搜索控件,也可以用sdk提供的UISearchController(ios8以后)、UISearchDisplayController(ios8之前);下面介绍UISearchController使用方法及注意事项:&&&&& & & & _searchController = [[UISearchController alloc] initWithSearchResultsController:_viewController];& & & & _searchController.searchResultsUpdater = &//设置UISearchResultsUpdating协议代理& & & & _searchController.delegate =&&&&&&&&//设置UISearchControllerDelegate协议代理& & & & _searchController.dimsBackgroundDuringPresentation = NO;&&&&&&&&&&&&//是否添加半透明覆盖层& & & & _searchController.hidesNavigationBarDuringPresentation = YES; & & //是否隐藏导航栏& & & & [self.view addSubview:_searchController.searchBar];&&&&&&&&&&&&&&&&&&&&//此处重要一步,将searbar显示到界面上[_searchController.searchBar setValue:@"取消" forKey:@"_cancelButtonText"];&另外需要注意在合适的地方添加下面一行代码& & & & & & self.definesPresentationContext = YES;这行代码是声明,哪个viewcontroller显示UISearchController,苹果开发中心的demo中的对这行代码,注释如下&// know where you want UISearchController to be displayeda、如果不添加上面这行代码,在设置hidesNavigationBarDuringPresentation这个属性为YES的时候,搜索框进入编辑模式会导致,searchbar不可见,偏移-64;在设置为NO的时候,进入编辑模式输入内容会导致高度为64的白条,猜测是导航栏没有渲染出来b、如果添加了上面这行代码,在设置hidesNavigationBarDuringPresentation这个属性为YES的时候,输入框进入编辑模式正常显示和使用;在设置为NO的时候,搜索框进入编辑模式导致向下偏移64,具体原因暂时未找到
喜欢该文的人也喜欢Pages: 1/2
主题 : 怎么把UISearchController的cancel按钮自定义中文取消?
级别: 骑士
UID: 451459
可可豆: 2403 CB
威望: 1680 点
在线时间: 458(时)
发自: Web Page
来源于&&分类
怎么把UISearchController的cancel按钮自定义中文取消?&&&
怎么把UISearchController的cancel按钮自定义中文取消??????懵逼了。
图片:56298.jpg
cc不常在,有什么技术问题,请加入群: ,大家一起讨论。
级别: 骑士
UID: 400498
可可豆: 536 CB
威望: 529 点
在线时间: 2025(时)
发自: Web Page
回 楼主(西奥幂) 的帖子
for(id sousuo in [infosearch subviews])&&&&{&&&&&&&&for (id zz in [sousuo subviews])&&&&&&&&{&&&&&&&&&&&&if([zz isKindOfClass:[UIButton class]]){&&&&&&&&&&&&&&&&UIButton *btn = (UIButton *)&&&&&&&&&&&&&&&&[btn setTitle:@&搜索& forState:UIControlStateNormal];&&&&&&&&&&&&&&&&[btn setTitleColor:[UIColor redColor] forState:UIControlStateNormal];&&&&&&&&&&&&}&&&&&&&&}&&&&}
级别: 骑士
UID: 451459
可可豆: 2403 CB
威望: 1680 点
在线时间: 458(时)
发自: Web Page
回 1楼(november11) 的帖子
请问UISearchController的cancel按钮设置的是系统的那句代码,可以贴给我看吗?我看的是别人的框架,不明白他是哪一句是?
cc不常在,有什么技术问题,请加入群: ,大家一起讨论。
级别: 骑士
UID: 451459
可可豆: 2403 CB
威望: 1680 点
在线时间: 458(时)
发自: Web Page
回 1楼(november11) 的帖子
你帮我看看,他这个取消按钮在哪里嘛!谢谢帅哥。
(998 K) 下载次数:25
cc不常在,有什么技术问题,请加入群: ,大家一起讨论。
级别: 骑士
UID: 451459
可可豆: 2403 CB
威望: 1680 点
在线时间: 458(时)
发自: Web Page
已解决:简单粗暴的方法:searchController.searchBar.showsCancelButton = YES;&&&&UIButton *canceLBtn = [searchController.searchBar valueForKey:@&cancelButton&];&&&&[canceLBtn setTitle:@&取消& forState:UIControlStateNormal];&&&&[canceLBtn setTitleColor:[UIColor colorWithRed:0.965 green:0.290 blue:0.608 alpha:1.00] forState:UIControlStateNormal];
cc不常在,有什么技术问题,请加入群: ,大家一起讨论。
级别: 骑士
UID: 400498
可可豆: 536 CB
威望: 529 点
在线时间: 2025(时)
发自: Web Page
回 3楼(西奥幂) 的帖子
在TLCityPickerSearchResultController。m文件中 - (void) updateSearchResultsForSearchController:(UISearchController *)searchController 这个方法中加上这段 就有效果了searchController.searchBar.showsCancelButton = YES;&&&&for(id sousuo in [searchController.searchBar subviews])&&&&{&&&&&& &&&&&&&&for (id zz in [sousuo subviews])&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&if([zz isKindOfClass:[UIButton class]]){&&&&&&&&&&&&&&&&UIButton *btn = (UIButton *)&&&&&&&&&&&&&&&&[btn setTitle:@&搜索& forState:UIControlStateNormal];&&&&&&&&&&&&&&&&[btn setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&}&&&&}
级别: 骑士
UID: 451459
可可豆: 2403 CB
威望: 1680 点
在线时间: 458(时)
发自: Web Page
回 5楼(november11) 的帖子
嗯,,谢谢了!
cc不常在,有什么技术问题,请加入群: ,大家一起讨论。
级别: 版主
UID: 519631
可可豆: 1895 CB
威望: 1269 点
在线时间: 2319(时)
发自: Web Page
话说。。真机+中文环境=searchBar的cancel就是&取消&。。。
级别: 骑士
UID: 451459
可可豆: 2403 CB
威望: 1680 点
在线时间: 458(时)
发自: Web Page
解决方案:
图片:777777.png
cc不常在,有什么技术问题,请加入群: ,大家一起讨论。
级别: 新手上路
UID: 530530
可可豆: 60 CB
威望: 58 点
在线时间: 98(时)
发自: Web Page
[_searchController.searchBar setValue:@&取消& forKey:@&_cancelButtonText&];
Pages: 1/2
关注本帖(如果有新回复会站内信通知您)
发帖、回帖都会得到可观的积分奖励。
按"Ctrl+Enter"直接提交
关注CocoaChina
关注微信 每日推荐
扫一扫 关注CVP公众号
扫一扫 浏览移动版UISearchController简直就是坑 - 简书
UISearchController简直就是坑
项目中需要使用搜索功能,之前都是使用UISearchBar+UISearchDisplayController或者如果你需要高度定制搜索框应该用UITextField加上点击事件完成。因为想偷懒,我就使用了iOS 8.0以后推出的新类UISearchController,毕竟我们的项目只是向下适配到8.0, 为了避免以后废弃API等问题,我就直接使用了UISearchController,结果发现各种坑.
1.我先粘出在问题的截图
在我使用UISearchController的过程中,遇到了一个奇葩的问题,我的展示界面和搜索界面是同一个界面,就是下面这句代码
//创建UISearchController _searchController = [[UISearchController alloc]initWithSearchResultsController:nil];
我没有单独创建一个UITableViewContrller用来展示搜索后的数据源内容,这样点击searchBar后,UISearchBar会自动占据导航栏(其实是一个属性hidesNavigationBarDuringPresentation),置为YES,点击searchBar后会自动隐藏导航栏(如下图),我建议将此属性置为true,否则将导致UISearchBar在导航栏下下沉44的高度。出现此问题的原因下面会提到。
WechatIMG1.jpeg
我出现的问题是下面这张截图所示
每次点击searchBar出现左上第一个界面,此时点击取消按钮,返回展示界面,但是UISearchBar会往上偏移,如右上界面所示,我是真的无语了,而且这个问题只在iOS 9.0以下出现,在9.0以上是好的。导航栏会遮挡UISearchBar,每次返回都会向上偏移20的高度。
在网上找到的解决方案有以下几种:
1.在-(UISearchController *)searchController方法里加上 self.definesPresentationContext = YES;这行代码
2.在合适的地方添加[self.searchController.searchBar sizeToFit];
3.在viewDidDisappear方法中添加self.navigationBar.translucent = NO;这行代码
方案1,设置definesPresentationContext为true,可以保证在UISearchController在激活状态下用户push到下一个view controller之后search bar不会仍留在界面上。但我之前说明了我的展示界面和搜索界面是同一个控制器。所以这个方案并没有解决我的问题。
苹果对它官方的解释是// know where you want UISearchController to be displayed
a、如果不添加上面这行代码,在设置hidesNavigationBarDuringPresentation这个属性为YES的时候,搜索框进入编辑模式会导致,searchbar不可见,偏移-64;
在设置为NO的时候,进入编辑模式输入内容会导致高度为64的白条,猜测是导航栏没有渲染出来
b、如果添加了上面这行代码,在设置hidesNavigationBarDuringPresentation这个属性为YES的时候,输入框进入编辑模式正常显示和使用;在设置为NO的时候,搜索框进入编辑模式导致向下偏移64,具体原因暂时未找到
方案2:当你没有设置searchBar的frame时,这行代码可以帮助你调整searchBar的位置。只是辅助作用,其实UISearchBar的默认高度就是44,
方案3:translucent属性的设置与否,与self.view的Frame的位置相关。当translucent设为NO时,self.view的位置,从navbar下边界开始。反之亦然。这也没有解决我的问题
2.下面是我在网上粘的可以用的示例
viewDidLoad中的代码
1.其中[self shuffledAlphabet]
是个产生三个随机字母的方法,其中该类需要遵循四个代理方法,包含UITableViewDelegate,UITableViewDataSource,UISearchControllerDelegate,UISearchResultsUpdating。因为UISearchController都是和UITableView配合使用的。
2.[self shuffledAlphabet]方法截图
3.遵循UITableViewDataSource协议的方法
datalist是原始数据,searchList是搜索后的数据内容。
4.遵循UISearchResultsUpdating协议的方法,该方法是对搜索内容进行筛选的方法
11时04分44秒.jpg
图中蓝色框圈住的代码,是因为我项目中需要修改UISearchController中UISearchBar的取消按钮的颜色和文字,我使用的KVC的方式去修改的,还有遍历UISearchBar的子控件方式去修改。默认的取消按钮的文字是Cancel
5.遵循UISearchControllerDelegate协议的方法
分为五个阶段
直接使用上面的示例代码,就可以解决我出现的问题,使用上面的示例代码,一定记住要将searchController的searchBar添加到tableView的tableHeaderView,之前我是直接将searchBar添加到了self.view上,并且也没有设定它的frame.[self.view addSubview:_searchController.searchBar];
最让我郁闷的是我写了个demo测试,完全没问题,但是粘进我的项目中使用,就会出现之前的问题,经过我的部分修改终于解决了上移问题,我怀疑是Xcode犯病了,但是同时又会冒出来一个新问题,如下图
WechatIMG356.jpeg
搜索出现的结果,cell的部分会和searchBar重叠,为了解决这个问题,我在下面这两个代理方法中,加了几行代码
并且一定要在- (void)updateSearchResultsForSearchController:(UISearchController *)searchController方法中加上这句代码self.edgesForExtendedLayout = UIRectEdgeN//不加的话,UISearchBar返回后会上移
简书里还有一篇文章介绍了这种情况,下面是链接,你可以参考下。
总结的有点乱,有什么不懂的你可以留言问我,很久没发文了,以后会整理项目中遇到的问题。
比你看到的更风趣
一、搜索功能我相信很多app都用得上,iOS系统提供做搜索的类有那几种呢? 1.UISearchBar,这个相信大多数开发者都用过,这个只是提供搜索框,其实就是跟一个UITextField没啥区别,只是在textfield封装了多点内容。 2.UISearchDisplay...
工作了好久一直很忙,好不容易有些时间,今天有人问我如何开始写一个项目,不禁回忆起自己写第一个项目的时候,到现在,突然感觉自己写的好多都是在重复,有些感想,特此写下这篇文章,给想入这行的新手们一些参考 1.写项目之前首先我们要确定需求,明确项目需要实现哪些功能(吐槽下:好多项...
UISearchBar和UISearchDisplayController配合使用,是iOS8之前的使用方法,iOS8以后使用UISearchController,更方便简单。 遵守协议 @property(nonatomic,strong)UISearchControll...
一个普通的searchBar的使用 写在前面 这两天想给app加一个搜索功能,打算采用系统自带的UISearch等一系列控件。 后来发现在iOS8前后,使用也是不一样的。 UISearchBar + UISearchDisplayController 是iOS8之前的常用写...
西安众赢电子商务有限公司 各种
好不容易找到一个自己喜欢的工作,刚上班一个月,公司今天挨个谈话,公司要倒闭了,让大家自行找工作去。
我愿驾一叶小舟, 游曳在夜里的湖心, 湖水遮面演奏, 清风娇羞入袖, 无世俗功名, 无红尘情仇, 只载满船月光, 和你醉人的温柔!
文|小象要趁早 今天小象先不发表感言了,因为接下来要观察的平台自身的话题性就很强了,所以我们开篇就开始对它的讨论吧。 这里也不卖关子了,直接报出它的大名吧,那就是黄河金融。 一个很憋屈的上市系平台,因为前段时间它让一些自媒体挤兑的不像样,还惊动了上交所,为此事儿上交所还专门...UISearchController筛选功能 - 简书
UISearchController筛选功能
import UIKit
class CategoryViewController: UIViewController,UITableViewDelegate,UITableViewDataSource,UISearchResultsUpdating,UISearchControllerDelegate {
var mTableView:UITableView!
var tableData = [Dictionary&String,String&]()
var filteredData = [Dictionary&String,String&]()
var resultSearchController = UISearchController()
var bgBtn: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
self.view.backgroundColor = UIColor.whiteColor()
initData()
initView()
override func viewWillAppear(animated: Bool) {
if !bgBtn.hidden{
bgBtn.hidden = true
override func viewWillDisappear(animated: Bool) {
if resultSearchController.active{
resultSearchController.active = false
resultSearchController.searchBar.removeFromSuperview()
func initData(){
//"地图展示", "聊天功能", "页面跳转", "自适应高度"
let dict1 = Dictionary(dictionaryLiteral: ("code","01"),("name","地图展示"))
tableData.append(dict1)
let dict2 = Dictionary(dictionaryLiteral: ("code","02"),("name","聊天功能"))
tableData.append(dict2)
let dict3 = Dictionary(dictionaryLiteral: ("code","03"),("name","页面跳转"))
tableData.append(dict3)
let dict4 = Dictionary(dictionaryLiteral: ("code","04"),("name","自适应高度"))
tableData.append(dict4)
func initView(){
mTableView = UITableView(frame: CGRectMake(0, top_height, screen_width, screen_height - top_height - tabBar_height))
mTableView.delegate = self
mTableView.dataSource = self
mTableView.tableFooterView = UIView()
view.addSubview(mTableView)
bgBtn = UIButton(frame: CGRectMake(0, top_height + 44, screen_width, screen_height))
bgBtn.alpha = 0.4
bgBtn.hidden = true
bgBtn.backgroundColor = UIColor.grayColor()
bgBtn.addTarget(self, action: "bgBtnClick", forControlEvents: UIControlEvents.TouchUpInside)
self.view.addSubview(bgBtn)
getSearchController()
//MARK: - 自定义方法
func getSearchController(){
if #available(iOS 9.0, *) {
self.resultSearchController.loadViewIfNeeded()// iOS 9
// 实例化UISearchController,并且设置搜索控制器为本身TableView
resultSearchController = UISearchController(searchResultsController: nil)
//设置UISearchControllerDelegate delegate
resultSearchController.delegate = self
// 设置更新搜索结果的对象为self
resultSearchController.searchResultsUpdater = self
// 设置UISearchController是否在编辑的时候隐藏NavigationBar,默认为true
resultSearchController.hidesNavigationBarDuringPresentation = false
// 设置UISearchController是否在编辑的时候隐藏背景色,默认为true
resultSearchController.dimsBackgroundDuringPresentation = false
// 设置UISearchController搜索栏的UISearchBarStyle为Prominent
resultSearchController.searchBar.searchBarStyle = UISearchBarStyle.Prominent
// 设置UISearchController搜索栏的Size是自适应
resultSearchController.searchBar.sizeToFit()
// UISearchController可以设置在三个地方,任意选择一项
// 1、设置navigationItem的titleView为UISearchController
//self.navigationItem.titleView = resultSearchController.searchBar
// 2、设置TableView的tableGHeaderView为controller.searchBar
mTableView.tableHeaderView = resultSearchController.searchBar
// 3、设置TableView的偏移量,使UISearchController默认就隐藏在Navigation下
//mTableView.contentOffset = CGPointMake(0, CGRectGetHeight(resultSearchController.searchBar.frame))
func bgBtnClick(){
resultSearchController.active
bgBtn.hidden = true
//MARK: - UITableViewDataSource
func numberOfSectionsInTableView(tableView: UITableView) -& Int {
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -& Int {
if resultSearchController.active{
return filteredData.count
return tableData.count
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -& UITableViewCell {
let cellIdentifier = "CellIdentifier"
var cell = tableView.dequeueReusableCellWithIdentifier(cellIdentifier)
if cell == nil{
cell = UITableViewCell(style: UITableViewCellStyle.Default, reuseIdentifier: cellIdentifier)
if resultSearchController.active{
cell!.textLabel?.text = filteredData[indexPath.row]["name"]
cell!.textLabel?.text = tableData[indexPath.row]["name"]
return cell!
//MARK: - UITableViewDelegate
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
tableView.deselectRowAtIndexPath(indexPath, animated: true)
var selectCode:String!;
var nextPageTitle:String!
if resultSearchController.active{
selectCode = filteredData[indexPath.row]["code"]
nextPageTitle = filteredData[indexPath.row]["name"]
selectCode = tableData[indexPath.row]["code"]
nextPageTitle = tableData[indexPath.row]["name"]
switch selectCode {
case "01":
let mapVC = MapViewController()
mapVC.title = nextPageTitle
mapVC.hidesBottomBarWhenPushed = true
self.navigationController?.pushViewController(mapVC, animated: true)
case "02":
CDChatManager.sharedManager().openWithClientId("你好", callback: { (result: Bool, error: NSError!) -& Void in
if (error == nil) {
let chatListVC = ChatListViewController()
chatListVC.title = nextPageTitle
chatListVC.hidesBottomBarWhenPushed = true
self.navigationController?.pushViewController(chatListVC, animated: true)
case "03":
let firstVC = FirstViewController()
firstVC.title = nextPageTitle
self.navigationController?.pushViewController(firstVC, animated: true)
case "04":
let autoSizeVC = AutoSizeViewController()
autoSizeVC.title = nextPageTitle
autoSizeVC.hidesBottomBarWhenPushed = true
self.navigationController?.pushViewController(autoSizeVC, animated: true)
//MARK: - UISearchControllerDelegate
func didPresentSearchController(searchController: UISearchController) {
//隐藏searchBar右侧的取消按钮
searchController.searchBar.showsCancelButton = false
//MARK: - UISearchResultsUpdating
func updateSearchResultsForSearchController(searchController: UISearchController) {
if searchController.searchBar.text == ""{
// 当搜索框内容为空时,设置bgView.hidden为false
bgBtn.hidden = false
filteredData = tableData
// 当搜索框内容不为空时,设置bgView.hidden为true
bgBtn.hidden = true
// 删除filteredData里的所有元素,并且默认的保存为false
filteredData.removeAll(keepCapacity: false)
filteredData = self.tableData.filter({ (dict) -& Bool in
let stringMatch = dict["name"]?.rangeOfString(searchController.searchBar.text!)
return stringMatch != nil
/** 对数组进行筛选
// 输入筛选文本,获取之后会自动去内存中搜索关键字,SELF CONTAINS[c]
let searchPredicate = NSPredicate(format: "SELF CONTAINS[C] %@", searchController.searchBar.text!)
// 从tableData中筛选输入的关键字
let array = (tableData as NSArray).filteredArrayUsingPredicate(searchPredicate)
// 再把筛选出来的关键字加入到filteredData中
filteredData = array as! [String]
// 刷新TableView
mTableView.reloadData()
我已经上传到我的github了,有什么提议或者问题可以留言 https://github.com/Ghstart/Multi_TableView_Demo
很惭愧,我一直是名副其实的“乱室佳人”,直到半年前在网上接触到“断舍离”的理念,才开始慢慢转变自己的想法,从什么都舍不得扔,到开始尝试扔,努力克服囤积欲。 看过很多人的整理方法,网友推荐的app拍照归总法和印象笔记归总法固然是好,但作为一个百来件衣服的懒人,实在觉得一件件拍...
发布日期: 编辑:朱老湿 版本:Week5 说明:APT=Awesome product topic 今天是教师节,感谢所有曾经在学校,家庭,公司,给过我们帮助和指导的各位老师。今天朋友圈好多朋友都发了下图,纯洁的小编表示不清楚这个老师教的哪门课 -_-...
印象笔记(以下简称:大象)的标签过滤大概从未告诉过你,它能推荐除当前信息标签外,还所属其他的标签列表给你;根据设置了多个标签的关联性,提示并速推关联性强的条目,高效地找出之前收集的资料。 图片较多,共享笔记地址:http://app.yinxiang.com/l/AAL6V...
“筛选&是Excel中最基本的功能,很多同学都会用。但今天给介绍几个关于自动筛选的9个高级用法,你还真不一定会。 源表:A列为数字 1、筛选包含1的数字 很简单,在搜索框中输入1即可。 2、筛选以1开始的数字 在搜索框中输入1*,这里*是通配符,可以是任意多个字符 3、筛选...
二刷《三体》,字斟句酌,被大刘的世界观和宇宙观震撼。历经人类几百年的变迁,看到了人类文明根深蒂固的问题。“弱小和无知不是生存的障碍,傲慢才是”。即便这句话已经很熟悉,结合自己这一年来的体会,深深感受到:往上走,去追求人生的巅峰和可以骄傲的资本,不是最难的事情。最难的事情是时...
到今天,终于没有勉强地提笔了。 虽然没有在晚上潜意识最活跃的时候捕捉下自己内心最真实呈现的那一面,但好歹是开始了,不必追求完美。能够开始,就是一种成长。
这就是大师?这本书简直就要让我对大师产生幻灭感,他还断了我的“愿景”:没有一个更“优秀”的我在某年某月等着我,大师都...
UIView常见错误:
一回到家,就想急迫地想见到爷爷奶奶,想念他们。经过这回奶奶住院回来以后,我好像长大了一样,天天为老人做饭,洗衣服。我感觉到很快乐,希望他们身体健康,天天快乐~小姑也回来了,完成了爷爷的一个梦想,买了个冰箱。爷爷嘴上说着不要,心里可开心了。谁知道半路杀出个程咬金,我大伯非...
酒店的自助早餐很不错 和bdm team吃了非常高档的新疆菜 不过我真的觉得还是和雪豹吃的好吃 接下来我们去了会所按脚 其实我并不感冒 包括这顿饭 不过我似乎没有选择 按脚小妹看出来了宝宝肠胃不好 宝宝需要研究一下 调理肠胃 maybe 我可以买艾灸盒again 在路上艾 ...

我要回帖

更多关于 ppt添加自定义按钮 的文章

 

随机推荐