Tencent / QMUI_iOS

QMUI iOS——致力于提高项目 UI 开发效率的解决方案
http://qmuiteam.com/ios
Other
7.09k stars 1.38k forks source link

iOS 13 使用QMUISearchController点击搜索框crash #643

Closed xx752690102 closed 5 years ago

xx752690102 commented 5 years ago

iOS 13 使用QMUICommonTableViewController集成的QMUICommonTableViewController 问题一: 点击搜索框crash 问题二: 将searchbar设置成导航栏的titleView 显示成了一条线 问题一截图: image image

问题二截图: image

ziecho commented 5 years ago

问题一:master 分支上已经解决,如果你是 pod 引入,建议等待我们发布版本,或者参考 UISearchBar+QMUI.m 手动修改。 问题二:测试无法复现你的情况,建议提供相关 Demo 或者代码: image

xx752690102 commented 5 years ago

问题一:master 分支上已经解决,如果你是 pod 引入,建议等待我们发布版本,或者参考 UISearchBar+QMUI.m 手动修改。 问题二:测试无法复现你的情况,建议提供相关 Demo 或者代码: image

你好,定位到问题所在了。设置如下代码,会导致问题二出现, self.searchBar.qmui_textField.background = [UIImage imageWithColor:UIColorMakeWithHex(@"#A792EF")];

MoLice commented 5 years ago

你好,定位到问题所在了。设置如下代码,会导致问题二出现, self.searchBar.qmui_textField.background = [UIImage imageWithColor:UIColorMakeWithHex(@"#A792EF")];

这个问题与 QMUI 无关,阅读 UISearchBar.h 头文件即可知道,UISearchBar 的输入框背景有专门的方法去设置:setSearchFieldBackgroundImage:forState:。自己通过获取内部的 textField 去修改 background 图片后出现非预期的效果,这本身就是符合预期的。

[searchController.searchBar setSearchFieldBackgroundImage:[UIImage qmui_imageWithColor:UIColorRed size:CGSizeMake(36, 36) cornerRadius:0] forState:UIControlStateNormal];
MoLice commented 5 years ago

已发布 4.0.0-beta 修复该问题。