kvc

    0熱度

    1回答

    我在XIB中使用綁定到NSObjectController。當我設置NSObjectController的新內容對象時,唯一不變的文本域值是具有第一響應者的文本域值。模型更改沒有問題。 如果我不使用自定義getter/setter,則擁有firstResponder(isBeingEdited)的文本字段將更改而不會出現問題。 我的KVC,KVO有什麼問題? 我的自定義getter/setter低

    0熱度

    1回答

    就像主題說的那樣,有一個類,我想爲運行時的屬性設置值, 並且我已經設置了從NSObject繼承的值使用KVC mechanism and Reflect mechanism,並且我還需要爲那些避難所設置值從NSObject繼承,如dataType是 Int, Double。我怎麼做到的?

    0熱度

    1回答

    我正在嘗試Realm(使用pod安裝)。我在Xcode 8.1中使用Swift 3。 我的代碼看起來像這個 - do { let realm = try Realm() let human = Human() human.name = "Nikhil" human.legs = 2 try realm.write { re

    1熱度

    1回答

    我想了解Swift 4的最新版本 - better KVC。有在操場上打印這個簡單的東西了什麼 class Foo { var name: String init(name: String) { self.name = name } } class Bar { var fooObject: Foo = Foo(name: "FooName

    2熱度

    2回答

    大家好我想要在Singleton類中的一個字符串屬性上實現KVO。當我嘗試添加觀察者時,我正遇到一些錯誤,並希望有人能告訴我我做錯了什麼。 下面顯示了我的單身人士課程。 class User: NSObject { static let currentUser = User() private override init() {} var pictureStrin

    1熱度

    2回答

    在KVC中,我通常使用setValues:forKeyPath:爲集合中的對象設置相同的值。例如: NSMutableArray <SomeClass *> *arr = [[NSMutableArray alloc] initWithCapacity:10]; for (int i = 0; i < 10; i++) { SomeClass *obj = [[SomeClass al

    1熱度

    1回答

    我已將代碼更新爲Xcode 9中的swift 4.在此之前它工作正常。但是現在AVplayer正在崩潰,下面的觀察者是崩潰的代碼。 addObserver(self, forKeyPath: "player.currentItem.duration", options: [.new, .initial], context: &playerViewControllerKVOContext) 和日

    3熱度

    1回答

    我試圖拉平字典的二維陣列使用KVC的。 NSArray *toBeFlatten = @[@[@{@1:@1}],@[@{@2:@2}]]; NSArray *flat = [toBeFlatten valueForKeyPath:@"@unionOfArrays.self"]; // flat:@[NSNull.null, NSNull.null]; 爲什麼字典「轉換」爲NSNull?

    7熱度

    3回答

    我正在學習如何使用志願。我創建了兩個類,Truck和Driver,如下所示。 Truck類有一個文本框和一個按鈕,文本應該包含當前的卡車速度,當按下按鈕時,prepareForSegue應該被調用,它包含下面的代碼。 Driver類包含應該充滿低速載貨一個文本框。 Truck類中的卡車速度將通過KVO傳遞給Driver類中的文本字段,如代碼所示。 我遇到的問題或者我想要做的是,當用戶在Truck類

    6熱度

    2回答

    我很高興地發現Swift 3的實現#keyPath(),它將消除拼寫錯誤並在編譯時強制實現關鍵路徑。比手動鍵入字符串好得多。 https://github.com/apple/swift-evolution/blob/master/proposals/0062-objc-keypaths.md class MyObject { @objc var myString: String = "