2015-09-02 6 views
2

userInfo только посылает данные типа anyObject, так что мне нужно, чтобы бросить свой массив Питание в anyObject без сбоев, а затем переделки его [Meal], к сожалению, он выходит из строя здесь. ..как отправить массив объектов с использованием NSNotification -> USERINFO в Swift

var anyOrder = NSMutableArray() 
    for meal in ordered { // ordered is array of meals [Meal] ... 
     anyOrder.addObject(meal as! AnyObject) //crashes here 
    } 

Я хочу быть в состоянии бросить его или найти другой способ, чтобы отправить его с помощью userInfo в NSNotification, заранее спасибо

+0

Почему вам нужно подать заявку на случай болезни AnyObject? Разве вы не можете просто отправить этот прием пищи без этого случая? –

+0

Является ли соединение структурой случайно? – picciano

+0

userInfo принимает только переменные AnyObject –

ответ

2

Я хотел бы знать тип Meal.

Если еда унаследовала AnyObject, вы можете легко ее отличить.

class Meal: AnyObject { 
    // something 
} 

var ordered = [Meal(), Meal()] 

var anyOrder = NSMutableArray() 
for meal in ordered { 
    anyOrder.addObject(meal as AnyObject) 
} 

Если это не так, может ли Meal лить AnyObject зависит от наследников. Учитывая крах, вы не смогли его бросить. Таким образом, ошибка времени выполнения.