UIScrollView“帧外”触摸区域无响应

时间:2015-05-15 18:00:59

标签: ios objective-c iphone uiscrollview uikit

我正在UIScrollView创建一个(320, 320)(0, 400),来源568pts。假设现在我正在设计一款高度为ViewController的iPhone 5S。

这意味着我的scrollView的底部未显示在view的{​​{1}}中,因为它太高了。

稍后,我将整个ViewController view.frame向上移动〜152pts,让我们完全展示scrollView及其之前隐藏的高度。

问题:即使scrollView现在完全可见,隐藏的部分也不会响应触摸。然而,始终可见的上半部分正常运作。

关于最新进展以及如何解决的任何想法?感谢

1 个答案:

答案 0 :(得分:1)

根据您提供的信息,您将整个view.frame向上移动152点,但视图的大小保持不变。您还应该将它的高度增加152点。

发生这种情况是因为隐藏的scrollView部分仍然在view.frame的边界之外绘制。

如果您的框架的默认高度为568,则您的scrollView将从y 400绘制到y 720.这意味着隐藏的部分正好是152,正如您所说。问题是,您将scrollView的父级向上移动了152,但view.frame的高度仍为568,而scrollView仍将在位置400处绘制(相对于view.frame),延伸至720 ,仍然是view.frame之外的152分。

如果这个viewController不是任何其他viewController的childViewController,我建议你只需向上移动scrollView,以避免这样的问题。