ios - UIPopoverController 不调整大小

标签 ios resize swift uipickerview uipopovercontroller

我正在使用 UIPopoverController 显示一个 View ,在该 View 中我有一个 UIPickerView,当使用 presentPopoverFromRect 时,PopOverControll 显示在 x 和 y 的正确位置但不调整控件的大小。这个 viewController 是一个单独的 .swift 文件。

var buttonCenter: CGPoint = BtCheque.center;            
var rect:CGRect = CGRectMake(buttonCenter.x, 1, 120, 90);                
_colorPickerPopover.presentPopoverFromRect(rect, inView: self.view , permittedArrowDirections: UIPopoverArrowDirection.Up, animated: true);

UIPickerView 的大小正确,但弹出窗口不正确。

这是结果:

Image result

最佳答案

我相信你误解了 presentPopoverFromRect 的工作原理,它指定了你的弹出框将显示的矩形,这不是你的弹出框的矩形。

例如,如果您有一个带有框架 (10, 10, 100, 30) 的按钮,并且在您按下此按钮后您想要显示弹出窗口,那么这是您应该传递给 presentPopoverFromRect 的推荐框架,而不是弹出框。

要指定弹出窗口的大小,请使用 _colorPickerPopoverpopoverContentSize 属性。

您还可以在弹出框子类的 viewDidLoad 方法中设置 preferredContentSize

关于ios - UIPopoverController 不调整大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24760789/

相关文章:

javascript - 当屏幕尺寸超过 1024px 时运行 jQuery 代码

arrays - 将整数的字符串数组表示形式转换为 Swift 中的整数数组

ios - 谷歌地图 API : String URL Enconding

Android 与 iOS 开发

ios - 使用 NSURLSessionUploadTask fromFile,如何将 HTML 输入名称与正在上传的文件链接起来?

ios - 为 iOS 应用程序创建数据库

ios - 如何在 TWTweetComposeViewController 中设置文本光标的位置?

jquery - 页面加载功能

python - 使用 .grid 将 tkinter 列表框的大小调整为最大项目的宽度

swift - 当 UIViewPropertyAnimator 执行动画过程时如何增加值?