如何为 UIPopoverController 强制设置黑色边框

Posted

技术标签:

【中文标题】如何为 UIPopoverController 强制设置黑色边框【英文标题】:How to force black borders for UIPopoverControllers 【发布时间】:2012-06-01 07:36:14 【问题描述】:

UIPopoverController 实例可以在 ios5 中使用 UIPopoverBackgroundView 类重新设置样式。但是,这种自定义技术不能应用于UIActionSheets(在 iPad 中显示为弹出框)。我希望我的弹出框看起来一致,所以UIPopoverBackgroundView 不适合我。

翻阅 iOS 艺术作品(使用extractor),我注意到除了_UIPopoverViewBlue* PNG(可能用于绘制默认的蓝色UIPopoverController 边框)之外,还有一组_UIPopoverViewBlack* PNG。如何让UIPopoverController 使用黑色图像而不是蓝色图像?

【问题讨论】:

【参考方案1】:

似乎没有办法正式实现这一目标。我怀疑它会通过 App Store 审核流程,但这适用于 iOS 6:

[popoverController setValue:@3 forKey:@"_popoverBackgroundStyle"];

很遗憾,Apple 没有公开披露这一点。

【讨论】:

这很好用!有没有人提交过使用此功能的应用以供审核?我知道 Apple 会自动捕获未记录的方法调用,但这是我第一次看到之前使用的“未记录的密钥”。 我已经使用这个提交了应用程序并且苹果已经接受并且我的应用程序现在已经上线了。

以上是关于如何为 UIPopoverController 强制设置黑色边框的主要内容,如果未能解决你的问题,请参考以下文章

UIPopoverController 上的 UIPopoverController

UIAlertView-like UIWindow

UIPopoverController 解雇

定制的 UIPopoverController?

当 UIPopoverController 在屏幕上时,无法与带有 UIPopoverController 的 UISearchBar 进行交互

UIPopoverController 没有箭头?