在Objective-C中,我使用下面的代码来删除任何子视图:
[self.view.subviews makeObjectsPerformSelector:@selector(removeFromSuperview)];
但是如何在swift中使用呢?我看到苹果的文档中提到了在swift中使用这个方法
func makeObjectsPerformSelector(_ aSelector: Selector)
但是当我尝试的时候,我得到了一个错误:'AnyObject[]' does not have a member named 'makeObjectsPerformSelector'
在swift中是否有删除子视图的方法?
3条答案
按热度按时间dxpyg8gm1#
使用
forEach
:或者像这样:
zte4gxcn2#
它仅适用于NSArray和NSMutableArray对象。
这将工作:
请注意,如果您有
Array<AnyObject>
,则可以自由转换为NSArray
,反之亦然。qcbq4gxm3#
从Xcode 7开始,Swift提供了performSelector方法的完整家族,包括
makeObjectsPerformSelector()
的NSArray
。