Mam niestandardowe klasy IBDesignable
w szybkim tempie, które powodują pewne awarie w konstruktorze interfejsów. Czy istnieje flaga, którą mogę sprawdzić, aby sprawdzić, czy używam kreatora interfejsu, czy nie? Idealnie byłoby to dyrektywa prekompilatora (#ifdef COMPILED_FOR_INTERFACE_BUILDER
lub coś podobnego). Pomyślałem, że może mógłbym ustawić flagę samodzielnie w prepareForInterfaceBuilder()
, ale wydaje się to nieładne i wydaje się nie działać niezawodnie, ponieważ wygląda, że właściwości klasy są ustawione przed wywołaniem tej funkcji, co może wywołać kod, który powoduje problemy. Wygląda na to, że musi być lepszy sposób. Dzięki!Sprawdzanie, czy kod działa w konstruktorze interfejsów
12
A
Odpowiedz
11
można używać preprocesora makro TARGET_INTERFACE_BUILDER określić kod do integracji z lub wykluczenia z widoku niestandardowego klasy „
+0
Dzięki! To było dokładnie to, czego szukałem iz jakiegoś powodu żadna ilość googlowania nie znalazła takiego makra. Bardzo przydatna! –
Nie wiem, dlaczego ta kwestia została przegłosowana. Myślę, że to świetne pytanie (oczywiście nie mam żadnej przydatnej odpowiedzi) – matt
Zgadzam się, to byłaby bardzo przydatna funkcja. (Głosowało) –