在 iOS 7 上压缩的 UITableView sectionIndexTitles

Posted

技术标签:

【中文标题】在 iOS 7 上压缩的 UITableView sectionIndexTitles【英文标题】:UITableView sectionIndexTitles compressed on iOS 7 【发布时间】:2013-10-01 07:37:32 【问题描述】:

UITableView 的部分索引在 ios 7 上会压缩,即使有足够的空间(这发生在 iPad 上)。在 iOS 6 上一切正常:

这只发生在横向时。

UITableView 在容器视图内,因为我有一个UISearchBar,在表格视图上方有一个UISearchDisplayController,不是它的标题,而是固定在UINavigationBar 下。

有谁知道如何避免sectionIndexTitles 压缩?

【问题讨论】:

我也有同样的问题。在我的情况下,iOS7 的横向索引中似乎只有 29 个项目。在 iOS 6 中,索引中的 36 个项目(A-Z + 0-9)没有问题。我会尝试修改索引字体以容纳更多项目。 这毫无意义。他们为什么将其限制为29?顺便说一句,还没有找到解决方案。 【参考方案1】:

在 iOS6 之前,您可以枚举 tableview 的子视图并修改具有 className UITableViewIndex 的视图。像这样:

for(UIView *aView in [tableView subviews]) 
   NSLog(@"View:%@",aView);
   if([[[aView class] description] isEqualToString:@"UITableViewIndex"]) 
       aView.font=[UIFont fontWithName:@"Helvetica-Bold" size:18.0];

在 iOS7 中,Apple 更改了视图层次结构并引入了 UITableViewWrapperView 作为 UITableView 的直接子视图,它有效地隐藏了所有实现细节。它没有子视图。不再修修补补。 所以我想唯一剩下的就是把它归档为一个错误。

【讨论】:

我必须同意。我暂时选择这个作为正确答案。谢谢。 我在 Apple 提交了一份错误报告,编号为 15175436。

以上是关于在 iOS 7 上压缩的 UITableView sectionIndexTitles的主要内容,如果未能解决你的问题,请参考以下文章

UITableView 在 iOS 7.1 上无法正确重新加载

在 iOS 7 上的 UITableView 上指示加载活动的正确方法是啥?

在 iOS 7 上滚动到 UITableView 的底部?

带有自定义单元格的 UITableView 在 iOS 6 上画得很好,但在 iOS 7 上完全是白色的

UITableView 在 IOS 7 与 IOS 6 中的行为不同

iOS 7 上的分组 UITableView 故障