我的界面中有三个UIButtons。它们具有文本和自定义背景图像。我明确设置了这些按钮的大小,以免图像失真。当我对按钮没有任何限制时,它们工作正常。当我开始尝试固定它们的尺寸,并将它们固定在底部并且彼此居中时,它们就会停止接受触摸。嗯,这并不完全正确:他们接受按钮顶部的小盒子上的触摸。触摸按钮的其余部分将被忽略。我打印出了框架和按钮的边界,它们没有改变我设置的内容。但是,它仍然没有在超过一半的按钮上注册触摸。任何一个背景图像都不会改变。
有没有什么可以帮我弄清楚为什么它没有检测到触摸?
编辑:在做了一些调查后,看来我有一个非常令人困惑的问题。我描述的问题只发生在4英寸设备上。当在4英寸设备上运行时,如果我将主视图的背景颜色设置为“默认”,则屏幕底部会有一个黑色的大带。在这个区域,命中检测不起作用。这不会出现在IB中,因为IB只是将视图显示为屏幕的正确大小。我认为这是一个旧应用程序,最初是为iOS 4部署的应用程序。我不确定UIWindow设置是否有问题,或者发生了什么。
答案 0 :(得分:0)
遍历子视图阵列,并记录每一帧。几乎可以肯定其他一些视图与按钮重叠。
所以在你的viewDidAppear中,获取子视图数组,并打印出每个视图的框架。
这是我见过的与“死”按钮区域有关的唯一问题。
答案 1 :(得分:0)
事实证明,因为这是一个较旧的应用程序,它有一个MainWindow.xib文件。在该MainWindow.xib文件中,未设置“启动时全屏”设置。设置使它完美地工作。