【发布时间】:2023-04-06 11:32:01
【问题描述】:
我有一个简单的应用程序,它也有一个 iOS 8 Today Extension(或小部件)。我正在做的一件事是在我的应用程序和我的小部件之间共享代码类,因为显然这使我不必拥有相同代码的多个副本。除了我遇到的一个问题之外,这一切都很好,其中一个 API UIApplication sharedApplication 出现错误,因为您无法在 iOS 8 小部件上使用它。
所以我想的是有一个简单的 if 语句,它检查最终目标是本机应用程序还是 iOS 8 小部件,然后根据需要添加代码。这行得通吗?
这是我的代码:
if (UIInterfaceOrientationIsLandscape([[UIApplication sharedApplication] statusBarOrientation]))
{
CGSize ssz = sz;
sz = CGSizeMake(ssz.height, ssz.width);
}
如何更改此代码,以便执行以下操作之一:
- 仅运行/编译 IF 最终目标是原生 iOS 应用而不是小部件。
- 或检查目标平台上是否有该 API,如果有,则使用它?
我希望我的问题有意义,感谢您抽出宝贵时间,Dan。
【问题讨论】:
-
@supertecnoboff 只是出于兴趣,你怎么看?
标签: ios objective-c target ios-app-extension ios8-today-widget