2015-03-04 2 views
2

Я добавил свой собственный userData к набору узлов и могу получить эту информацию, но не знаю, как ее извлечь таким образом, чтобы я мог ее использовать. Из этой строки кодаКак извлечь и изменить userData из узла в Swift?

println(node.userData!) 

я получаю выход в следующем виде в консоли вывода

{ 10 = 0; }

Первое число представляет собой целочисленное значение индекса, а второе - булево. Значения индекса различны для каждого узла, тогда как для boolean установлено значение false для всех из них. Мне нужно изменить логическое значение истины в каждом случае, и мне нужно, чтобы извлечь значение индекса для использования в дальнейших условных операторах, такие как

if indexValue = 1 { 
some code here 
} 

Как я могу это сделать?

ответ

3

Если вы хотите использовать значения index и boolean отдельно, лучше сохранить их как две пары значений ключа.

node.userData = ["index": 10, "boolean" : false ] 

Вы можете извлечь индекс со следующим кодом.

if let index = node.userData?.valueForKey("index") as? Int { 
    println(index) 
} 

Чтобы изменить значения, которые вы можете сделать,

node.userData?.setValue(true, forKey: "boolean") 
node.userData?.setValue(11, forKey: "index") 
+1

вы спасатель! : D Большое спасибо, теперь я лучше понимаю, как использовать этот тип синтаксиса! – tolkienfan2

Смежные вопросы