Objective-C:如何让UIPopoverPresentationController箭头指向?

时间:2016-07-12 18:27:40

标签: ios objective-c ipad constraints uipopovercontroller

我为iPad应用程序实现了UIPopoverPresentationController,但是弹出框的箭头指向下而不是向上。 popPresenter.arrowDirection给出一个错误,指出这是一个只读属性。如何设置popOver的箭头指向而不是向下?

UIPopoverPresentationController *popPresenter = [self.alertController popoverPresentationController];
popPresenter.sourceView =  self;       
popPresenter.sourceRect = CGRectMake(self.center.x, self.contentSize.height, self.bounds.origin.y, self.contentSize.height);
popPresenter.arrowDirection = UIPopoverArrowDirectionUp;

2 个答案:

答案 0 :(得分:1)

试试这个

popPresenter.permittedArrowDirections = UIPopoverArrowDirectionUp;

答案 1 :(得分:0)

以下代码告诉iOS使用向上箭头显示UIPopoverPresentationController

popPresenter.permittedArrowDirections = UIPopoverArrowDirectionUp;

但是如果你阅读与它相关的苹果文档(并且名称暗示它)它只告诉操作系统试图让箭头指向,它不能保证。

permittedArrowDirections

  

在显示弹出窗口之前,请将此属性设置为箭头   您喜欢弹出窗口的方向。在演讲期间,   popover演示控制器尝试尊重您的偏好但是   如果不能另外布置,可以使用不同的箭头方向   酥料饼。弹出窗口使用的实际箭头方向存储在   arrowDirection属性。

你需要展示你的弹出窗口,其中有足够的空间用于弹出窗口向上箭头并且具有适当的UI。