
首先我的问题是每当我点击Searchbar时,它就会消失.当我输入一些文本时,它可以工作,但它保持完全空白.然后我设法使用此代码半解决问题:
- (voID)searchForText:(Nsstring*)searchText{ [self.vIEw addSubvIEw:villeSearchController.searchbar];} 哪个半工作因为现在,当我点击搜索栏时,它会消隐,但是如果我输入一个字符,它会再次出现,然后它就会停留在那里,无论如何.直到我取消搜索,然后再次点击它,在这种情况下它会消隐.
我做了一些测试,这个方法(searchForText)在第一次点击时被调用,所以这不是原因.
有谁知道我如何解决这个问题并让搜索栏从第一次点击出现?
编辑:
这是我初始化SearchController的方法:
villeSearchController = [[UISearchController alloc] initWithSearchResultsController:nil];villeSearchController.searchResultsUpdater = self;villeSearchController.dimsBackgroundDuringPresentation = NO;villeSearchController.searchbar.delegate = self;villetableVIEw.tableheaderVIEw = villeSearchController.searchbar;villeSearchController.searchbar.scopebuttonTitles = @[];self.definesPresentationContext = YES;[villeSearchController.searchbar sizetoFit];解决方法 尝试检查navigationbar.translucent属性 – 当UISearchController将呈现searchbar时它应该是YES,否则将是UI错误.
来自@SiavA的更新
更好的解决方案是使用UIVIEwController的extendedLayoutIncludesOpaquebars属性.如果您使用不透明导航栏,只需将其设置为true,即控制器将显示UISearchController(不适用于navigationController).
例如.
- (voID)vIEwDIDLoad { [super vIEwDIDLoad]; self.extendedLayoutIncludesOpaquebars = !self.navigationController.navigationbar.translucent;} 总结 以上是内存溢出为你收集整理的ios – UISearchController searchBar在第一次点击时消失全部内容,希望文章能够帮你解决ios – UISearchController searchBar在第一次点击时消失所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)