ios - 从Singleton Object呈现iOS 8 UIAlertController

标签 ios objective-c core-location

我目前有一个locationManager(不是CLLocationManager)单例,该单例正在启动应用程序时获取我的位置,并管理应用程序中的其余位置服务。

初始化后,如果状态被拒绝,则位置管理器会触发警报,提示您更改授权状态。由于它是一个nsobject,因此我无法展示它,并且我一直在寻找其他选项,但大多数都是黑客。实际上有可能以这种方式呈现吗?

提前致谢

最佳答案

我敢肯定,有些人会争论您是否应该。话虽如此,您可能会这样做:

[[(<#YourAppDelegate#> *)[UIApplication sharedApplication].delegate window].rootViewController presentViewController:<#(UIViewController *)#> animated:<#(BOOL)#> completion:<#^(void)completion#>];

请注意,如果您使用的是Mac应用程序而不是iOS,则可能会出现多个窗口,并且您可能希望使用按键窗口。有时这可能是系统窗口,因此您应该注意这一点。这是一篇说明差异的文章:

https://stackoverflow.com/a/21698751/2611971

如果您希望在keyWindow上显示,可以使用以下方法:
[[UIApplication sharedApplication].keyWindow.rootViewController presentViewController:<#(UIViewController *)#> animated:<#(BOOL)#> completion:<#^(void)completion#>];

关于ios - 从Singleton Object呈现iOS 8 UIAlertController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27274984/

相关文章:

ios - UITableView 在旋转时自动布局调整大小

objective-c - 如何在iOS应用程序上显示Facebook用户的新闻提要?

objective-c - xcode 4.5,iPhone 5 破坏了我的 UIScrollView

ios - 最接近点的 CloudKit 位置

ios - 使用 firebase 登录时使用多个 token

ios - 如何在swift中传递[String ]' to ' String'值

ios - 无法添加按钮

iphone - iOS:更新后核心位置关闭?

ios - CLLocationManager 和 CLLocationManagerDelegate 的问题

ios - 如何修改选定的 Collection View Item 的大小