Eine andere Problemumgehung besteht darin, zu ändern, wie eine Aufzählungseigenschaft dem Interface Builder angezeigt wird. Beispielsweise:
#if TARGET_INTERFACE_BUILDER
@property (nonatomic, assign) IBInspectable NSInteger fontWeight;
#else
@property (nonatomic, assign) FontWeight fontWeight;
#endif
Dies setzt eine Aufzählung mit dem Namen FontWeight voraus. Es beruht auf der Tatsache, dass Aufzählungen und ihre rohen ganzzahligen Werte in Objective-C etwas austauschbar verwendet werden können. Anschließend können Sie im Interface Builder eine Ganzzahl für die Eigenschaft angeben, die nicht ideal ist, aber funktioniert und bei programmgesteuerter Verwendung derselben Eigenschaft ein geringes Maß an Typensicherheit beibehält.
Dies ist eine bessere Alternative als das Deklarieren einer separaten Integer-Eigenschaft, da Sie keine zusätzliche Logik schreiben müssen, um eine zweite Integer-Eigenschaft zu verarbeiten, mit der auch dasselbe erreicht werden kann.
Dies funktioniert jedoch nicht mit Swift, da wir nicht implizit von einer Ganzzahl in eine Aufzählung umwandeln können. Irgendwelche Gedanken zur Lösung wären willkommen.