0

我的界面中有三个 UIButton。他们有文本和自定义背景图像。我明确设置了这些按钮的大小,以免图像失真。当我对按钮完全没有限制时,它们可以正常工作。当我开始尝试固定它们的尺寸,并将它们固定在底部并彼此居中时,它们会停止接受触摸。嗯,这并不完全正确:他们接受按钮顶部的一个小框的触摸。按钮其余部分的触摸将被忽略。我已经打印出按钮的框架和边界,它们并没有改变我设置的内容。但是,它仍然没有记录超过一半按钮的触摸。在任何过程中,背景图像都不会改变。

有什么可以帮助我弄清楚为什么它没有检测到触摸?

编辑:在做了一些调查之后,看来我有一个非常令人困惑的问题。我描述的问题只发生在 4 英寸设备上。在 4 英寸设备上运行时,如果我将主视图的背景颜色设置为“默认”,则屏幕底部会出现一个黑色的大条带。正是在这个区域中,命中检测不起作用。这不会在 IB 中显示,因为 IB 只是将视图显示为屏幕的正确尺寸。

这是一个旧应用程序,我认为最初是为 iOS 4 部署的。我不确定 UIWindow 设置是否有问题,或者发生了什么。

4

2 回答 2

0

事实证明,因为这是一个较旧的应用程序,它有一个 MainWindow.xib 文件。在该 MainWindow.xib 文件中,未设置“启动时全屏”设置。设置使它完美地工作。

于 2013-11-14T20:21:16.750 回答
0

遍历子视图数组,并记录每一帧。几乎可以肯定,其他一些视图与按钮重叠。

因此,在您的 viewDidAppear 中,获取子视图数组,并打印出每个视图的框架。

这是我见过的与“死”按钮区域相关的唯一问题。

于 2013-11-14T20:02:14.003 回答