jvd*_*ten 16 objective-c uitableview ios
我有一个应用程序,我有一个UITableView
可以在侧面滚动的部分sectionIndexTitlesForTableView:
.
在tableHeaderView
的UITableView
我想补充一个UISearchBar
,我要像一个苹果在iOS7他们新的联系人应用程序中使用的行为.但我似乎无法让它发挥作用.
搜索栏不是屏幕宽度的100%,而是右侧与节索引相对应.
我的问题是:
tableHeaderView
一个UITableView
具有可见部分指标?我已经尝试了几件事,包括在导航栏中添加搜索栏,然后使用UISearchBarController
,但我在Apple网站上找不到关于如何创建这个的好文档.此外,从iOS6到iOS7的过渡指南对我来说也没有什么帮助.
这是两张图片,说明了我的问题:
苹果公司应用程序的方式有两个主要区别,这将解决您的问题.
首先,他们的UISearchBar不是tableView的headerView.这是表格上方的单独视图.您需要将UITableViewController更改为UITiewController,其UITableView位于UISearchBar下方.
其次,他们的UISearchBar有一个相关的搜索显示控制器.假设您正在使用故事板文件,它会捆绑在一起 - 只需将UISearchBar添加到搜索显示控制器即可.这将处理状态栏下方的所有过渡.
小智 0
两件事情:
1)将tableView设置sectionIndexBackgroundColor
为[UIColor clearColor]。
2)实现'viewDidLayoutSubviews'方法来修复UISearchBar的框架
- (void)viewDidLayoutSubviews {
[super viewDidLayoutSubviews];
CGRect barFrame = self.searchBar.frame;
barFrame.size.width = self.view.bounds.size.width;
self.searchBar.frame = barFrame;
}
Run Code Online (Sandbox Code Playgroud)