我正在尝试找到一种方法来编写与Kotlin的 apply 和 also 方法等效的Swift。我想我知道我将如何实现它,但是想知道是否有将它应用于所有或大多数主要uikit类的捷径。
基本上,我想要类似的东西:
extension ____ {
func apply(() -> void) {
}
func also(() -> void) {
}x
}
可供所有班级使用。
答案 0 :(得分:2)
并非一步一步地适用于所有UIKit类,但是您可以通过将其应用于其他人继承的类来稍微简化一些事情。例如,如果您向UIResponder
添加扩展名,它会被很多其他类继承,包括UIView
及其继承的所有内容以及UIViewController
及其所有后代类。确实,屏幕上显示的几乎所有内容。除此之外,如果可行,您还可以选择UIImage
和UIColor
之类的课程。
答案 1 :(得分:0)
只需将扩展名应用于NSObject。
https://developer.apple.com/documentation/objectivec/nsobject
不确定是否是每个课程,但要从某个地方开始。