UIImage(QMUITheme)

@interface UIImage (QMUITheme) <QMUIDynamicImageProtocol>

/**
 生成一个动态的 image 对象,每次使用该图片时都会动态根据当前的 QMUIThemeManager 主题返回对应的图片。
 @param provider 当 image 被使用时,这个 provider 会被调用,返回对应当前主题的 image 值
 @return 当前主题下的实际图片,由 provider 返回
 */
+ (UIImage *)qmui_imageWithThemeProvider:(UIImage *(^)(__kindof QMUIThemeManager *manager, __kindof NSObject<NSCopying> * _Nullable identifier, __kindof NSObject * _Nullable theme))provider;

/**
 生成一个动态的 image 对象,每次使用该图片时都会动态根据当前的 QMUIThemeManager name 和主题返回对应的图片。
 @param name themeManager 的 name,用于区分不同维度的主题管理器
 @param provider 当 image 被使用时,这个 provider 会被调用,返回对应当前主题的 image 值
 @return 当前主题下的实际图片,由 provider 返回
*/
+ (UIImage *)qmui_imageWithThemeManagerName:(__kindof NSObject<NSCopying> *)name provider:(UIImage *(^)(__kindof QMUIThemeManager *manager, __kindof NSObject<NSCopying> * _Nullable identifier, __kindof NSObject * _Nullable theme))provider;

@end

Undocumented

  • 生成一个动态的 image 对象,每次使用该图片时都会动态根据当前的 QMUIThemeManager 主题返回对应的图片。

    Declaration

    Objective-C

    + (nonnull UIImage *)qmui_imageWithThemeProvider:
        (nonnull UIImage *_Nonnull (^)(__kindof QMUIThemeManager *_Nonnull,
                                       __kindof NSObject<NSCopying> *_Nullable,
                                       __kindof NSObject *_Nullable))provider;

    Swift

    class func qmui_image(themeProvider provider: @escaping (QMUIThemeManager, (NSCopying & NSObjectProtocol)?, NSObject?) -> UIImage) -> UIImage

    Parameters

    provider

    当 image 被使用时,这个 provider 会被调用,返回对应当前主题的 image 值

    Return Value

    当前主题下的实际图片,由 provider 返回

  • 生成一个动态的 image 对象,每次使用该图片时都会动态根据当前的 QMUIThemeManager name 和主题返回对应的图片。

    Declaration

    Objective-C

    + (nonnull UIImage *)
        qmui_imageWithThemeManagerName:(nonnull __kindof NSObject<NSCopying> *)name
                              provider:(nonnull UIImage *_Nonnull (^)(
                                           __kindof QMUIThemeManager *_Nonnull,
                                           __kindof NSObject<NSCopying> *_Nullable,
                                           __kindof NSObject *_Nullable))provider;

    Swift

    class func qmui_image(withThemeManagerName name: NSCopying & NSObjectProtocol, provider: @escaping (QMUIThemeManager, (NSCopying & NSObjectProtocol)?, NSObject?) -> UIImage) -> UIImage

    Parameters

    name

    themeManager 的 name,用于区分不同维度的主题管理器

    provider

    当 image 被使用时,这个 provider 会被调用,返回对应当前主题的 image 值

    Return Value

    当前主题下的实际图片,由 provider 返回