有時候我們在項目中可能會使用到 APP 的 Logo 圖片(App icon)和啟動頁圖片,所以這時如果我們使用的是 xcassets 來設(shè)置Logo 圖片(App icon)和啟動頁圖片的話,我們在程序中就可以直接使用:
- 獲取 Logo(App icon)
NSDictionary *infoPlist = [[NSBundle mainBundle] infoDictionary];
NSArray *icons = [infoPlist valueForKeyPath:@"CFBundleIcons.CFBundlePrimaryIcon.CFBundleIconFiles"];
// icons 獲取到的就是當前設(shè)備使用的 Logo 圖片名稱,這時我們需要使用的話,則獲取其中的圖片。
- 獲取啟動頁圖片
NSArray *lauchImages = [[[NSBundle mainBundle] infoDictionary] valueForKey:@"UILaunchImages"];
// lauchImages 獲取到的就是項目中使用的啟動頁圖片
// 我們可以遍歷這個數(shù)組,然后和當前設(shè)備的尺寸比較,得到當前設(shè)備的啟動頁圖片
for (NSDictionary *dic in lauchImages) {
/* *字典中 key 的含義:
* UILaunchImageSize:啟動頁圖片大小
* UILaunchImageOrientation:啟動頁圖片支持的屏幕方向(Portrait:豎屏;Landscape:橫屏)
* UILaunchImageName:圖片名字
**/
CGSize imageSize = CGSizeFromString(dic[@"UILaunchImageSize"]);
if (CGSizeEqualToSize(imageSize, UIScreen.mainScreen.bounds.size)) {
// 當前設(shè)備的啟動圖
// 如果項目支持橫屏和豎屏的話,可以再通過“UILaunchImageOrientation”判斷
}
}