Tencent / QMUI_iOS

QMUI iOS——致力于提高项目 UI 开发效率的解决方案
http://qmuiteam.com/ios
Other
7.05k stars 1.37k forks source link

请问能单纯抽取换肤的库吗? #1420

Closed tfy87happy closed 1 year ago

tfy87happy commented 1 year ago

现存问题或期望目标 当前库功能过于强大,有些hook还可能与接入方的App产生冲突,如果能单纯抽取换肤功能,不涉及其他太多的功能,业务方用起来可能更加的方便,希望能早日抽取这样的库

MoLice commented 1 year ago

暂时不会有这种安排,你可以只 pod QMUITheme,但因此而引入的东西,是否有哪些你不需要的,这个说不准。

tfy87happy commented 1 year ago

请问怎样Pod QMUITheme,如果是用pod 'QMUIKit/QMUIComponents/QMUITheme'的话,跟pod 'QMUIKit'的内容是一样的,而pod 'QMUITheme'跟pod 'QMUIKit/QMUITheme'是会报错

MoLice commented 1 year ago

跟pod 'QMUIKit'的内容是一样的

肯定不一样的,后者包含大量其他控件,只是不在你的关注范围。我猜测你的意思就是各种对 UIKit 的 hook 你不想要,前面已经答复过,如果我的猜测没错,那目前我们是不会对这一点做调整的,这个工作量太大了。😂

tfy87happy commented 1 year ago

大神,请教下,UIImage+QMUITheme里面消息转发是- (id)forwardingTargetForSelector:(SEL)aSelector是如何触发的,看代码大概是调用生成图片方法的时候,会生成一个QMUIThemeImage,然后触发themeProvider重新拿到图片,themeProvider是在消息转发里面触发的,是什么原因让它走了消息转发,消息转发应该是在方法没实现时候走,forwardingTargetForSelector里面是走了个isSymbleImage的方法。同样,UIColor+QMUITheme,又是怎样关联self.themeProvider的,这两处不是太明白,请指教。