UIImage+BDPAppearance.h
2.49 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
//
// UIImage+BDPAppearance.h
// BDPAppearancer
//
// Created by hulinling on 2019/7/25.
// Copyright © 2019 baidu. All rights reserved.
//
#import <UIKit/UIKit.h>
/// 获取指定图片名的图片,若获取不到,则会获取默认主题下的图片
#define BDPAppearanceImage(name) [UIImage bdpappearance_imageNamed:name]
/// 获取指定图片名的图片,然后将此图片设置透明度(透明度大于0 小于1 且是0.05的倍数,遵守无极平台的规范); 若获取不到,则会获取默认主题下的图片
#define BDPAppearanceImageAlpha(name, alpha) [UIImage bdpappearance_imageNamed:name imageAlpha:alpha]
/// 获取指定主题下对应图片名的图片,若获取不到,则返回 nil
#define BDPAppearanceImageMode(image, mode) [UIImage bdpappearance_imageNamed:image themeMode:mode]
@interface UIImage (BDPAppearance)
/// 主题图片(该值会随着主题变化而变化;若当前图片是通过指定主题的方法生成的,则该值不会随着主题变化而变化)
@property (nonatomic, readonly) UIImage *bdp_appearanceImage;
/// 图片名
@property (nonatomic, readonly) NSString *bdp_imageName;
/// 根据图片名获取当前主题下的图片,若获取不到,则会获取默认主题下的图片(建议使用:BDPAppearanceImage(image))
/// @note 会优先去当前APP的xcassets里获取对应的图片,若没有获取到,则会到指定主题目录下获取对应主题下的对应图片
/// @param imageName 图片名
+ (UIImage *)bdpappearance_imageNamed:(NSString *)imageName;
/// 根据图片名称获取当前主题下的图片,然后将此图片设置透明度(透明度大于0 小于1 且是0.05的倍数,遵守无极平台的规范)若获取不到,则会获取默认主题下的图片(建议使用:BDPAppearanceImageAlpha(name,alpha))
/// @param imageName 图片名称
/// @param imageAlpha 图片透明度
+ (UIImage *)bdpappearance_imageNamed:(NSString *)imageName imageAlpha:(CGFloat)imageAlpha;
/// 根据图片名获取指定主题下的图片,若获取不到,则会返回 nil(建议使用:BDPAppearanceImageMode(image, mode))
/// @note 通过此方法获取的图片,将不会随主题变化而变化;会优先去当前APP的xcassets里获取对应的图片,若没有获取到,则会到指定主题目录下获取对应主题下的对应图片
/// @param imageName 图片名
/// @param themeMode 指定主题
+ (UIImage *)bdpappearance_imageNamed:(NSString *)imageName themeMode:(NSString *)themeMode;
@end