在iOS中,`performSelector`方法用于调用对象的指定方法。
使用方法如下:
1. 调用无参数方法:
```swift
let object = SomeClass()
object.performSelector(onMainThread: #selector(SomeClass.someMethod), with: nil, waitUntilDone: false)
```
上述代码将在主线程上调用`SomeClass`的`someMethod`方法。
2. 调用带有参数的方法:
```swift
let object = SomeClass()
let parameter = "Hello"
object.performSelector(onMainThread: #selector(SomeClass.someMethod(with:)), with: parameter, waitUntilDone: false)
```
上述代码将在主线程上调用`SomeClass`的`someMethod`方法,并传递参数`"Hello"`。
需要注意的是,`performSelector`方法默认只能调用没有返回值的方法。如果要调用有返回值的方法,可以使用`perform`方法配合`NSInvocation`来实现:
```swift
let object = SomeClass()
let invocation = NSInvocation()
invocation.target = object
invocation.selector = #selector(SomeClass.someMethod)
invocation.invoke()
```
上述代码将调用`SomeClass`的`someMethod`方法,并获取返回值。
需要注意的是,`performSelector`方法在Swift中已经被废弃,推荐使用更安全的方式来调用方法,例如使用闭包或选择器(Selector)+协议的方式。