我没有足够的声誉来发布图片,这里是链接
第一张照片
第二张图片
我想要实现的是:
>在正常状态下,导航栏包含2个左右按钮,一个UISearchbar和该搜索栏内的一个清除按钮(看起来像带有2个加号按钮的第一张照片).
>在搜索状态下,视图被另一个视图替换,当它被关闭时,视图恢复到原始状态.
>适用于iOS 6和7
我知道这可以通过使用UISearchdisplayController,但它不工作.这是我的代码:
.h:实现tableVIEw的DataSource / Delegate,UISearchdisplayDelegate,UISearchbarDelegate
.M
-(voID) vIEwDIDload{ //Add left,right buttons self.leftbutton = [[UIbarbuttonItem alloc] init]; [self.leftbutton setStyle:UIbarbuttonItemStylePlain]; [self.leftbutton setTitle:@"button"]; self.navigationItem.leftbarbuttonItem = self.leftbutton; self.rightbutton = [[UIbarbuttonItem alloc] init]; [self.rightbutton setStyle:UIbarbuttonItemStylePlain]; [self.rightbutton setTitle:@"button"]; self.navigationItem.rightbarbuttonItem = self.rightbutton; self.searchbar = [[UISearchbar alloc] initWithFrame:self.navigationController.navigationbar.bounds]; if (DEVICE_IS_IOS7) { self.searchbar.searchbarStyle = UISearchbarStyleMinimal; } self.navigationItem.TitleVIEw = self.searchbar; self.searchbar.delegate = self; //---------------- self.searchController = [[UISearchdisplayController alloc] initWithSearchbar:self.searchbar contentsController:self]; self.searchController.delegate = self; self.searchController.searchResultsDataSource = self; self.searchController.searchResultsDelegate = self;} /* table implementation */
在iOS 7中,UISearchdisplayController(灰色)的视图没有覆盖主视图,resulttable没有重新加载数据,甚至可以过滤搜索字符串. (我不得不使用KVO来显示它)
在iOS 6中,灰色的东西涵盖了所有的屏幕和键盘没有显示(它立即消失).
有人可以帮忙吗
谢谢.
假的,而不是.隐藏您的UIVIEwController中的导航栏,并使用高度为64的iOS 7或44 for iOS 6的UIVIEw,并将其放在顶部,以使其看起来像一个导航栏.将UISearchbar添加到正常的子视图中,然后根据您的需要在UISearchbarDelegate方法中进行动画化.
总结以上是内存溢出为你收集整理的如何模仿UISearchBar在iOS中Safari的行为全部内容,希望文章能够帮你解决如何模仿UISearchBar在iOS中Safari的行为所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)