如何以编程方式确定支持的应用程序方向?

时间:2014-04-21 21:26:17

标签: ios orientation

我正在开发可以进入任何应用的第三方库。我的库提供的功能取决于应用程序支持的方向。我想知道是否有任何可靠的,编程方式来检索任何给定应用程序中支持的应用程序方向列表。这很重要,这样我就可以根据支持的方向修改我的库可用的功能。

注意:考虑到这是一个库,我需要能够查询一个可靠的地方以获取此信息。

4 个答案:

答案 0 :(得分:2)

您可以使用

Info.plist 作为字典阅读
[[NSBundle mainBundle] infoDictionary]

您可以通过UISupportedInterfaceOrientations键轻松获得支持的方向。

NSDictionary* infoDict = [[NSBundle mainBundle] infoDictionary];
NSArray* supportedOrientations = [infoDict objectForKey:@"UISupportedInterfaceOrientations"];

答案 1 :(得分:1)

查看UIApplicationDelegate协议中的application:supportedInterfaceOrientationsForWindow:。根据您的意见,它应该满足您的需求。如果应用程序未实现该方法,请回退到 Info.plist 中的信息。

答案 2 :(得分:1)

在Swift 3.0中:

#pragma pack(push)
#pragma pack(1)
struct bmphdr
{
    uint16_t    bfType;
    uint32_t    bfSize;
    uint32_t    bfReserved;
    uint32_t    bfOffBits;
    uint32_t    biSize;
    uint32_t    biWidth;
    int32_t     biHeight;
    uint16_t    biPlanes;
    uint16_t    biBitCount;
    uint32_t    biCompression;
    uint32_t    biSizeImage;
    int32_t     biXPelsPerMeter;
    int32_t     biYPelsPerMeter;
    uint32_t    biClrUsed;
    uint32_t    biClrImportant;
};
#pragma pack(pop)

答案 3 :(得分:0)

Info.plist UISupportedInterfaceOrientations如何?