それでは、私はこのようなクラスを持っているとしましょう:すばやく(Reflection/Mirror)でプロパティのタイプを動的に見つける方法はありますか?
class Employee: NSObject {
var id: String?
var someArray: [Employee]?
}
私はプロパティ名を取得するためにリフレクションを使用します。これまでの
let employee = Employee()
let mirror = Mirror(reflecting: employee)
propertyNames = mirror.children.flatMap { $0.label }
// ["businessUnitId", "someArray"]
とても良いです!今私はこれらの各プロパティの型を把握できるようにする必要があります。もし私がemployee.valueForKey("someArray")
を実行すると、AnyObject型しか与えられないので動作しません。これを行う最善の方法は何でしょうか?特に配列の場合、配列にEmployee
の型が含まれていることを動的に伝えることができる必要があります。
これはまさに私が探していたものです! –
property.value.dynamicTypeは、値がnilの場合はnilを返します – shahid610169
ありがとうございますso so so much –