版权声明:大熊猫猪·侯佩原创或翻译作品.谢绝转载! hopy https://blog.csdn.net/mydo/article/details/82893190
修改某一个UI子类的外观很容易,但是如果有1万个对象需要修改怎么办?
而且我还不想子类化和扩展该类!
拿导航栏上的UIBarButtonItem对象来说。
如果我想修改其在导航栏上的位置,可以这么做:
UIBarButtonItem().setBackButtonTitlePositionAdjustment(.zero, for: .default)
但是App中有一百多个子VC,会不断经手导航栏,我该怎么办?
CocoaTouch已经帮我们想到了解决方法,就是用UI类整体的外观,而不是某个对象的外观:
let appearance = UIBarButtonItem.appearance()
appearance.setBackButtonTitlePositionAdjustment(UIOffset.init(horizontal: 0.0, vertical: -60), for: .default)