我有一个测试项目并创建了嵌入TabBarController的ViewController。我已经将'UISearchBar'和'UISegmentedControl'置于约束状态,并且在纵向模式下它们是可点击的。但是当我旋转到横向模式(iPhone)时,只有320像素的searchBar和segmentedControl是可点击的,其余部分则不是。这在下图中有更好的解释。
为什么会这样?
如何在横向模式下“拉伸”可点击区域?
正如您所看到的,约束工作正常,组件的大小正确。
答案 0 :(得分:0)
你的一些约束工作正常,但其他人很可能没有。如果分段控件在横向上只是部分可点击,则应检查其超视图的帧大小。
在横向模式下,分段控件部分位于超视图框架之外。如果超级视图框架正常,请进一步查看超级视图层次结构。
要解决此问题,请尝试以下操作:
答案 1 :(得分:0)
我刚刚将以下代码放在我的TabBarViewController类中。
- (void)viewDidLayoutSubviews
{
// fix for iOS7 bug in UITabBarController
self.selectedViewController.view.superview.frame = self.view.bounds;
}