我正在创建一个tableview,我将在UITableViewCell中有一个UIImageView
,我想让用户放大。我已经能够在UIScrollView
内创建此效果,但一直在努力使其适合放大单UITableViewCell
。
在底部,我已经为UIScrollView
添加了适用于我的代码。挑战始于为viewForZoomingInScrollView
返回的内容。如果我尝试从单元格中给出此方法UIImageView
它会引发错误,因为在加载表之前调用viewForZoomingInScrollView
会导致找不到我引用的单元格。如果我传递整个视图本身self.view
我可以滚动但整个tableview被缩放(我想在这里放大单元格中的UIImageView
)当我发布缩放时我得到一个错误{ {1}}这显然不是正确的道路。
这里的任何帮助或指导将不胜感激。
Terminating app due to uncaught exception 'CALayerInvalidGeometry', reason: 'CALayer bounds contains NaN: [nan nan; 375 667]
}
答案 0 :(得分:1)
听起来好像你想要像Facebook或Twitter那样的东西,你可以点击图像并缩放以适应屏幕。
您需要做的是将其视为导航步骤 - 即在概念上类似于在标准表视图中选择行并将新视图控制器推送到导航控制器堆栈时所发生的情况,除了您可能想要使用自定义转换以模态方式呈现。
在简单的情况下,这意味着向单元格的图像视图添加轻击手势识别器;为了获得完整的效果,您可以添加一个捏合手势识别器来进行交互式过渡。
我建议观看以下WWDC视频: