Можете ли вы запустить функции KVC в Xcode Playgrounds? - PullRequest
0 голосов
/ 18 мая 2018

Я следую учебному пособию по KVC и KVO, когда я пытался ввести код в игровую площадку, однако он не запустился.Я получил сообщение об ошибке «Завершение с необработанным исключением типа NSException».Я даже пытался создать приложение отдельного приложения и вводил информацию в viewController, чтобы увидеть, что происходит, и он все равно не будет создан, что приводило к ошибке, что объект не был совместим с кодировкой клавиш.Мне бы очень хотелось увидеть эту работу, что я делаю неправильно?

import UIKit
import Foundation


//this is a reference object which means when it is copied, it will copy a reference to the same instance and not a brand new value like a value type does
class Student: NSObject {
    var name: String = ""
    var gradeLevel: Int = 0
}


let seat1 = Student()
seat1.setValue("Kelly", forKey: "name")

1 Ответ

0 голосов
/ 18 мая 2018

Ваша проблема не в детской площадке.Ваша проблема заключается в том, что для использования механизма Objective C KVC необходимо пометить свойство как @objc.

class Student: NSObject {
    @objc var name: String = ""
    var gradeLevel: Int = 0
}

Добавление, которое исправит сбой.

...