Skip to content

Dev #8#10

Open
nice2m wants to merge 3 commits intoWellsYC:masterfrom
nice2m:dev-#8
Open

Dev #8#10
nice2m wants to merge 3 commits intoWellsYC:masterfrom
nice2m:dev-#8

Conversation

@nice2m
Copy link

@nice2m nice2m commented Sep 28, 2019

感谢作者分享,这个库使用很简单、方便!

修复菜单项之间分割线颜色失效问题;
猜想:父类UITableViewCell原始方法setSeparatorColor:是以Catogory的方式实现,在编译完成后由于各种原因(查阅中,后续更新),YCMenuCell中setSeparatorColor:方法被UITableViewCell覆盖;
验证:通过runtime,查看系统控件UITableViewCell的方法列表已经包含了YCMenuCell下的setSeparatorColor:方法

最后通过修改YCMenuCell下的setSeparatorColor:方法名称为setMenueSeparatorColor:修复;

@WellsYC
Copy link
Owner

WellsYC commented Sep 30, 2019

谢谢大兄弟的提醒和修改。之前针对这个问题也简单修改了cell的_separatorColor为_separatorLineColor,也一直忘记来更新。我的理解是,当同名方法出现是,代码执行的顺序是分类 > 本类 > 父类。所以分类中的setSeparatorColor方法会覆盖住YCMenuCell中的setSeparatorColor。

@nice2m
Copy link
Author

nice2m commented Oct 7, 2019

谢谢大兄弟的提醒和修改。之前针对这个问题也简单修改了cell的_separatorColor为_separatorLineColor,也一直忘记来更新。我的理解是,当同名方法出现是,代码执行的顺序是分类 > 本类 > 父类。所以分类中的setSeparatorColor方法会覆盖住YCMenuCell中的setSeparatorColor。

是的,认同你说的 分类 > 本类 > 父类,UIKit控件UITableViewCell 的setSeparatorColor方法被重写但是没有调用,就很奇怪

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants