ViewController 中的 UITableView 和 UICollectionView 在 iOS 8 中不起作用

Posted

技术标签:

【中文标题】ViewController 中的 UITableView 和 UICollectionView 在 iOS 8 中不起作用【英文标题】:UITableView and UICollectionView in ViewController, didn't works in iOS 8 【发布时间】:2015-04-15 21:38:21 【问题描述】:

我在集合中实现了一个日历。在集合下方有一个 Tableview,其中包含在日历中选择的当天活动。当我选择一天并在 ios7 中完美运行时,我会重新加载,但在 iOS8 中,TableView 没有通过tableView:cellForRowAtIndexPath:

iPhone 4s - iOS7

iPhone 4s - iOS8

所有的委托(表和集合)都被声明了。

【问题讨论】:

尝试检查表格视图的大小是否为零。零大小的表格视图无需费心创建单元格。 @EranGoldin 在 iOS8 中不通过 (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath @FlavioFranco 分享你的代码 【参考方案1】:

1在此控制器中验证您的手势

您是否在此控制器中实现了 UITapGesture 或 UISwipeGesture ? 手势对象获得表格视图手势的焦点。

2验证您的架构 amd64

如果您使用 amd64 架构,请确认您使用 CGFloat 而不是在您的委托方法中浮动。 在架构 amd64 中,CGFloat 是 double 而不是 float。 UI 无法正常响应。

K.

【讨论】:

【参考方案2】:

我发现了这个错误,我在我的 tableView 中使用了 高度等于或小于 约束,后来我根据屏幕大小以编程方式修改了约束。这在 iOS7 中运行良好,但在 iOS 8 中不行:C

只是我将 tableview 的约束高度更改为 equals 并且效果很好:)

http://i.stack.imgur.com/NWlwn.png

【讨论】:

以上是关于ViewController 中的 UITableView 和 UICollectionView 在 iOS 8 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章

弹出视图控制器后 UITableview 丢失参考

自定义 UIView 中的 UItable

如何在代码中使用 UItable 单元中的按钮插座

我想使用 didSelectRowAt 将数组从 UITableView 显示到下一个 viewController

UITable 视图中的单元格队列大小

如何使 UIButton 从 UITable 中的选择中播放相应的音频剪辑?