在调整滚动视图大小后,为什么我无法点击输入元素?

时间:2010-06-28 14:10:20

标签: iphone objective-c uiscrollview

我有一个示例项目,它使用来自通知的指标来调整文本字段时调整键盘的大小。

http://www.smallsharptools.com/downloads/ObjC/KeyboardSize.zip

一系列文本字段都包含在UIScrollView中,当显示键盘时,会发送一个带有高度值的通知。我使用它来降低UIScrollView的高度,以便所有内容都可以在不被键盘覆盖的情况下向内滚动。

但我发现,当我这样做时,其他文本字段有时无法被点击。他们似乎被一层我看不到的层覆盖。

如何确保在更改高度时UIScrollView中的输入元素仍可访问?

仅供参考:您可以在示例项目中看到顶部有一个蓝色标记,底部有另一个红色标记。处理调整大小的视图控制器是CMScrollingViewController,它继承到KeyboardSizeViewController,以便多个视图控制器可以使用此行为。

我希望能解决这个问题,以便可以重复使用这个简单的代码。

1 个答案:

答案 0 :(得分:0)

我发现了我的问题。我正在设置滚动视图内部的视图,以使用自动调整蒙版来弯曲高度和宽度。一旦我评论出这行代码,这个问题就消失了。它似乎正在调整视图的大小,但我仍然可以看到视图的内容,但它超出了视图的范围,所以它无法响应点击。

//self.subView.autoresizingMask = (UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleWidth);