2010-12-06 69 views
3

如果我有一個類的實例,說一個UIView或它的子類或只是NSObject的一個簡單的子類,我怎麼能得到該對象的可觀察的keypath列表?如何獲得KVO的可觀察關鍵路徑列表?

我想獲得有效的keyPath值的列表,以便在addObserver方法中使用它們。

+0

轉發http://stackoverflow.com/questions/754824/get-an-object-attributes-list-in-objective-c – Endemic 2010-12-06 22:10:11

+0

@Endemic:謝謝,我會試試看。當我搜索時,我沒有包含「kvc」和「attribute」,並且答案沒有提到kvo或keypath。 – Padawan 2010-12-06 22:17:56

回答

3

您無法獲得對象的kvo兼容密鑰的完整列表。沒有這樣的列表存在。該對象不僅可以自由使用任何想要的鍵,而且可以在運行時動態添加新鍵。你可能做的最好的做法是遍歷所有的屬性,將它們的名字作爲關鍵字,並且可能遍歷尋找任何形式的方法-setFoo:以將「foo」作爲關鍵字。但這不是萬無一失的,不一定能抓住一切。