UITableView 不再使用 xCode 4.5 滚动,部署在 5.x 或 6.0

Posted

技术标签:

【中文标题】UITableView 不再使用 xCode 4.5 滚动,部署在 5.x 或 6.0【英文标题】:UITableView no longer scrolling using xCode 4.5, deploying on 5.x or 6.0 【发布时间】:2012-09-25 13:04:44 【问题描述】:

使用 UITableView 显示图像的部署项目。 升级到 xCode 4.5,突然我的 UITableView 不再滚动了。

这发生在 ios 5.0 -> 6.0 的设备和模拟器上

此外,我发现我无法再以编程方式设置 PanGestureRecognizer 的最小触摸次数。 Other *** ticket 事实上,僵尸分析表明识别器已被释放。这绝对可以解释上述行为。我设置识别器的尝试如下并崩溃。

UIPanGestureRecognizer* pgr = [imageTableView panGestureRecognizer];
[pgr setMinimumNumberOfTouches:2];
[pgr setMaximumNumberOfTouches:2];

还有其他人看到这个问题吗?

【问题讨论】:

【参考方案1】:

我在迁移到 iOS6/XCode 4.5 时遇到了类似的问题。似乎 UIPanGestureRecognizer 现在从底层 UIScrollViews 或 UITableViews 窃取触摸。

我在下面的帖子中找到了解决此问题的方法。这不是评分最高的答案,所以我也会重新粘贴下面的内容:

iphone - UIGestureRecognizer prevents UITableView from scrolling in Xcode 4.5

我遇到了同样的问题:我曾经将 TabGestureRecognizer 直接拖到情节提要上,而不是通过代码创建它们。在 iOS6 中,这似乎打破了滚动。

我更喜欢将视图、手势等直接添加到故事板上,而不是通过代码。

您仍然可以这样做,但需要进行两项更改:

1) 引用 Outlet 集合 右键单击场景停靠栏中您可以看到的 GestureRecognizer。 清除引用 Outlet Collections 部分

2) 通过代码将GestureRecognizer附加到相关视图

为您的 GestureRecognizer 创建一个出口 在 viewDidLoad 方法中添加以下行:

[self.tableView addGestureRecognizer:_tabGesture];

【讨论】:

谢谢,实际上我上周就想通了,并打算自己添加一个答案。 感谢您的检查!您一定会喜欢 XCode 4.5 带来的所有这些杂项隐藏的变化 :)

以上是关于UITableView 不再使用 xCode 4.5 滚动,部署在 5.x 或 6.0的主要内容,如果未能解决你的问题,请参考以下文章

更新到 Xcode7-beta4 后,无法在属性检查器中设置 UITableView 的 backgroundColor 属性

systemSound 不再适用于使用 ARC 升级的 Xcode 4.5.2

iOS5 模式登录不再在 XCode 4.2 中启动

在 Xcode 9 / Swift 4 中不再可以访问原生 UIKit 元素的子视图?

杀死/退出应用程序后,如何在 UITableView 中使用 NSUserDefaults 显示自定义单元格,Xcode Swift

如何在 Mac OS X 10.8 / Xcode 4.4 上使用/安装 gcc