使用(获取)Images.xcassets中的图片名,不能直接[UIimage ImageWithName:],应该这样

        最新做一个项目,需要iOS默认启动图过后,再次使用启动图垫底,然后配合广告图进行一个动画。故最直接的办法就是使用Images.xcassets中的图片。然而,直接使用Images.xcassets中的图片名,再用[UIImage ImageWithName:]取不到图片???

        这是因为Images.xcassets会对启动图,进行二次命名。所以,需要获取Images.xassets的重命名后的名字(具体函数参考下面代码),再用[UIImage ImageWithName:]就ok

        举例:我的工程中的启动图是这样的:


       直接使用"Default-667h"等获取不到图片,需要这个函数(放到appdelegae中)

- (NSString *)fetchLunchImageName
{
    CGSize winSize = self.window.size;
    NSArray* imagesDict = [[[NSBundle mainBundle] infoDictionary] valueForKey:@"UILaunchImages"];
    for (NSDictionary* dict in imagesDict) {
        if(CGSizeEqualToSize(CGSizeFromString(dict[@"UILaunchImageSize"]),winSize))
        {
            return dict[@"UILaunchImageName"];
        }
    }
    return nil;
}

结果:获取images.xcassets中对应的图片名

iPhone6/s   @“LaunchImage-800-667h”
iPhone6+/s @“LaunchImage-800-Portrait-736h”
iPhone5     @“LaunchImage-700-568h”
iPhone4s   @“LaunchImage-700”

然后再使用[UIImage ImageWithName:]就可以啦

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值