Próbuję ustawić wartość obiektu @objc
w moim kodzie Swift za pomocą obj.setValue(value, forKey: key)
.Catch Objective-C wyjątek w Swift
Działa poprawnie, gdy obiekt ma ustawioną właściwość. Ale jeśli tak się nie stanie, moja aplikacja rozbija się mocno o nieprzechwycony NSException
("klasa nie jest zgodna z kodowaniem klucza wartości ...").
Jak mogę uchwycić i zaabsorbować ten wyjątek, tak jak mogę w Objective-C, aby nie uszkodzić mojej aplikacji? Próbowałem owijać go w próbkę Swift, ale narzeka, że żadna z instrukcji nie rzuca i nie robi nic.
Czy naprawdę potrzebujesz KVC? Obiekty w słownikach powinny być ustawione za pomocą 'setObject: forKey:' lub kluczowego indeksowania, szczególnie w Swift. – vadian
Tak, piszę parser XML i muszę mieć możliwość ustawiania dowolnych właściwości obiektów według ich nazw. – devios1
Zamiast przechwytywać wyjątek, sprawdź, czy klucz istnieje. – vadian