UISearchBar 中的 CANCEL 需要很长时间
Posted
技术标签:
【中文标题】UISearchBar 中的 CANCEL 需要很长时间【英文标题】:CANCEL in UISearchBar taking a real long time 【发布时间】:2014-02-15 23:04:56 【问题描述】:在 UITableView 中点击 UISeachBar 上的取消按钮会永远循环,并继续消耗内存。这是我的条件和发现。
1) 为表格的背景视图使用自定义视图 2) 从核心数据中检索到的一长串项目 3) 开始搜索,输入几个字母——一切OK。我得到了我需要的结果 4) 点击取消 - 等待开始
我使用 CPU 分析器进行调试,发现它卡在了对 [layoutsbelowifneeded] 的调用中。
我删除了带有背景图像的自定义视图,一切正常。
发生这种情况的任何原因?
更新:
这是我正在使用的代码:
UIImage *image=[UIImage imageNamed:@"tableview_background.png"];
UIImageView *view=[[UIImageView alloc] initWithImage:image];
wltvc.tableView.backgroundView=view;
【问题讨论】:
您究竟是如何为表格视图添加背景图像的?UIImage *image=[UIImage imageNamed:@"tableview_background.png"];
UIImageView *view=[[UIImageView alloc] initWithImage:image];
wltvc.tableView.backgroundView=view;
@sangony
你用什么方法调用该代码?
【参考方案1】:
无需创建自定义视图即可将背景添加到 tableview。这可以在默认的 uitableviewcontroller 上完成,例如 -
UIImage *image=[UIImage imageNamed:@"tableview_background.png"];
UIImageView *view=[[UIImageView alloc] initWithImage:image];
[view setFrame:self.tableView.frame];
self.tableView.backgroundView = view;
【讨论】:
UISearchViewController 也可以有同样的代码以上是关于UISearchBar 中的 CANCEL 需要很长时间的主要内容,如果未能解决你的问题,请参考以下文章
如何将UISearchBar上"Cancel"按钮改为”取消“?
更改 UISearchBar 内 CLEAR 按钮的 Tint 颜色 NOT CANCEL BUTTON