我有一个带有 Split View Controller 的 iPad 应用程序,它实现了一些代码来显示/隐藏左侧的 tableview
。
右侧(详细信息 Controller )是一个自定义的 UIView
(特别是),它在运行时从 nib 加载 - 这工作正常。
如果我隐藏母版,那么细节会调整大小以填满屏幕,正如您所期望的那样,但是宽度与母版 tableview
的宽度可疑相似的区域随后在最右侧处于非事件状态细节 - 不能点击放置在那里的按钮,也不能滚动到那里。
我假设以某种方式调整大小会导致这种情况发生,但我无法弄清楚为什么......
根据要求,我使用以下代码来隐藏 master:
SplitViewController *splitViewController = (SplitViewController *)[[[[UIApplication sharedApplication] delegate] window] rootViewController];
splitViewController.shouldHideMasterController = !splitViewController.shouldHideMasterController;
[splitViewController willRotateToInterfaceOrientation:self.interfaceOrientation duration:0];
[splitViewController.view setNeedsLayout];
[self updateTextView];
最佳答案
我看到这种行为在开发 iOS 应用程序时经常发生,需要意识到的是 UIViews 不会裁剪其 subview 的绘制,但不会让您与超出其范围的 subview 进行交互。检查您无法点击的内容是否在其任何 super View 的框架之外。
关于ios - 以编程方式调整 Nib 的大小会使区域变为非事件区域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20858057/