iOS6 ios7 图片适配

ios6和ios7扁平化界面的图片会不同,一般会由美工提供两组图片。假定ios6 的图片名称为A ;ios7的图片都定义为A_os7。这样的话图片适配基本实现如下:


step 1 :创建pch文件,用宏定义全局判别ios版本。在xcode6中apple取消了pch文件的默认创建,添加过程请参加上篇博文。

//判断是否为IOS7
#define ios7 ([[UIDevice currentDevice].systemVersion doubleValue]>=7.0)
在pch中添加如上代码进行ios7判定。


step 2 : 创建categray类型文件,

UIImage+ZY.h :

#import <UIKit/UIKit.h>

@interface UIImage (ZY)

/**
 *  加载图片拦截器 用于图片的IOS7/IOS6适配
 *  @param name 图片名称
 *
 */
+ (UIImage *)imageWithName:(NSString *)name;

@end
UIImage+ZY.m :

#import "UIImage+ZY.h"

@implementation UIImage (ZY)
+ (UIImage *)imageWithName:(NSString *)name{
    if(ios7){
        NSString *newName = [name stringByAppendingString:@"_os7"];
        UIImage *image = [UIImage imageNamed:newName];
        if(image == nil){
            image = [UIImage imageNamed:name];
        }
        return image;
    };
    return [UIImage imageNamed:name];
};
@end
如上代码,通过已写好的宏定义判别是否为IOS7以上版本,若是,则将图片名称右连接“os7”.当然,不排除有的图片是IOS6/7共用的,我们可以判断+os7的图片能不能获得,图片为nil则视作共用。

这样我们在添加图片的时候便可以直接调用imageWhitName方法进行匹配。eg:

    //设置图标
    childVc.tabBarItem.image = [UIImage imageWithName:imageName];


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值