Ios UIPopoverController奇怪的行为

Ios UIPopoverController奇怪的行为,ios,ipad,ios8,uipopovercontroller,Ios,Ipad,Ios8,Uipopovercontroller,今天,在理解和调整我的popover控制器时,我的行为非常怪异。所以我决定做一个样品演示 下面是我的演示 普通的iPad应用程序,带有导航控制器和2个子视图 在视图中将出现我写的导航的根视图 [self setPreferredContentSize:CGSizeMake(200.0, 400.0)] 当然,在第二个孩子的视图中将出现一个按钮来调用第二个孩子 [self setPreferredContentSize:CGSizeMake(10, 10)]; 爆米花什么也没发生。原来如此。现

今天,在理解和调整我的popover控制器时,我的行为非常怪异。所以我决定做一个样品演示

下面是我的演示

普通的iPad应用程序,带有导航控制器和2个子视图

在视图中将出现我写的导航的根视图

[self setPreferredContentSize:CGSizeMake(200.0, 400.0)]
当然,在第二个孩子的视图中将出现一个按钮来调用第二个孩子

[self setPreferredContentSize:CGSizeMake(10, 10)];
爆米花什么也没发生。原来如此。现在我做了如下轻微的修改

[self setPreferredContentSize:CGSizeMake(500.0, 200.0)];
然后,只有宽度得到改变。这更奇怪,要么宽度和高度都应该改变,要么都不改变

我对这种行为感到非常困惑

我没有使用SetContentSizeForvieWinPover,因为iOS 7不推荐使用此方法

任何建议/帮助都将不胜感激

谢谢


如果我增加了popover内容的宽度和高度,那么两者都能正常工作。显然,正如我提到的,如果我减少内容大小,它将保持原样。如果第二个孩子的内容大小较小,则popover内容保持原样,而如果我们通过按back返回根视图,则popover中始终设置提供的宽度,即,如果我给宽度10,则它变为10,如果我给宽度700,则它变为700。但这只发生在根视图中,并且只发生在该视图的宽度上。高度问题/错误行为仍然存在。很难说,因为您写得太不清楚,但这可能与我在书中讨论的错误相同:如果popover的contentViewController是UINavigationController,并且视图控制器被推到堆栈上或从堆栈中弹出,然后,如果当前视图控制器的contentSizeForViewInPopover与先前显示的视图控制器的contentSizeForViewInPopover不同。。。popover的宽度将更改以匹配新宽度,但只有在新高度更高时,popover的高度才会更改