UIVisualEffect(QMUITheme)
@interface UIVisualEffect (QMUITheme) <QMUIDynamicEffectProtocol>
/**
生成一个动态的 UIVisualEffect 对象,每次使用该对象时都会动态根据当前的 QMUIThemeManager 主题返回对应的 effect。
@param provider 当 UIVisualEffect 被使用时,这个 provider 会被调用,返回对应当前主题的 effect 值。请不要在这个 block 里做耗时操作。
@return 一个动态的 UIVisualEffect 对象,被使用时才会返回实际的 effect 效果
*/
+ (UIVisualEffect *)qmui_effectWithThemeProvider:(UIVisualEffect *(^)(__kindof QMUIThemeManager *manager, __kindof NSObject<NSCopying> * _Nullable identifier, __kindof NSObject * _Nullable theme))provider;
/**
生成一个动态的 UIVisualEffect 对象,每次使用该对象时都会动态根据当前的 QMUIThemeManager name 和主题返回对应的 effect。
@param name themeManager 的 name,用于区分不同维度的主题管理器
@param provider 当 UIVisualEffect 被使用时,这个 provider 会被调用,返回对应当前主题的 effect 值。请不要在这个 block 里做耗时操作。
@return 一个动态的 UIVisualEffect 对象,被使用时才会返回实际的 effect 效果
*/
+ (UIVisualEffect *)qmui_effectWithThemeManagerName:(__kindof NSObject<NSCopying> *)name provider:(UIVisualEffect *(^)(__kindof QMUIThemeManager *manager, __kindof NSObject<NSCopying> * _Nullable identifier, __kindof NSObject * _Nullable theme))provider;
@end
Undocumented
-
生成一个动态的 UIVisualEffect 对象,每次使用该对象时都会动态根据当前的 QMUIThemeManager 主题返回对应的 effect。
Declaration
Objective-C
+ (nonnull UIVisualEffect *)qmui_effectWithThemeProvider: (nonnull UIVisualEffect *_Nonnull (^)( __kindof QMUIThemeManager *_Nonnull, __kindof NSObject<NSCopying> *_Nullable, __kindof NSObject *_Nullable))provider;
Swift
class func qmui_effect(themeProvider provider: @escaping (QMUIThemeManager, (NSCopying & NSObjectProtocol)?, NSObject?) -> UIVisualEffect) -> UIVisualEffect
Parameters
provider
当 UIVisualEffect 被使用时,这个 provider 会被调用,返回对应当前主题的 effect 值。请不要在这个 block 里做耗时操作。
Return Value
一个动态的 UIVisualEffect 对象,被使用时才会返回实际的 effect 效果
-
生成一个动态的 UIVisualEffect 对象,每次使用该对象时都会动态根据当前的 QMUIThemeManager name 和主题返回对应的 effect。
Declaration
Objective-C
+ (nonnull UIVisualEffect *) qmui_effectWithThemeManagerName:(nonnull __kindof NSObject<NSCopying> *)name provider:(nonnull UIVisualEffect *_Nonnull (^)( __kindof QMUIThemeManager *_Nonnull, __kindof NSObject<NSCopying> *_Nullable, __kindof NSObject *_Nullable))provider;
Swift
class func qmui_effect(withThemeManagerName name: NSCopying & NSObjectProtocol, provider: @escaping (QMUIThemeManager, (NSCopying & NSObjectProtocol)?, NSObject?) -> UIVisualEffect) -> UIVisualEffect
Parameters
name
themeManager 的 name,用于区分不同维度的主题管理器
provider
当 UIVisualEffect 被使用时,这个 provider 会被调用,返回对应当前主题的 effect 值。请不要在这个 block 里做耗时操作。
Return Value
一个动态的 UIVisualEffect 对象,被使用时才会返回实际的 effect 效果