我正在显示要在视图中显示的弹出框,但在顶部留有一些空间。
我正在使用presentPopoverFromrect:inView:permittedArrowDirections:
,但除了传递视图之外,我还想将弹出框限制在矩形内的视图中。
这意味着,弹出框不应超出视图中的此矩形,并相应地调整箭头。有没有办法使这成为可能?
我正在显示要在视图中显示的弹出框,但在顶部留有一些空间。
我正在使用presentPopoverFromrect:inView:permittedArrowDirections:
,但除了传递视图之外,我还想将弹出框限制在矩形内的视图中。
这意味着,弹出框不应超出视图中的此矩形,并相应地调整箭头。有没有办法使这成为可能?
您需要设置 UIPopover 的“popoverLayoutMargins”属性。像这样——
[myPopoverController setPopoverLayoutMargins:UIEdgeInsetsMake(top, left, bottom, right)];
这将弹出框限制为指定的插图。有关详细信息,请阅读相同方法的文档。
PS我知道这个问题的答案很晚,但我刚刚遇到并解决了同样的问题,所以我可以保证这个解决方案。
覆盖 contentSizeForPopover 并使其返回您需要的值。
- (CGSize)contentSizeForViewInPopover
{
return CGSizeMake(180, 360);
}
使 xib 大小自由形式并首先删除状态栏。然后在 xib 中为视图设置的任何值使其成为 viewdidload
[self setContentSizeForViewInPopover:CGSizeMake(widthsetinxib, heightsetinxib)];