iOS および Mac OS 用のコントロール ライブラリがあります。次のように実装されます。
#if TARGET_OS_IPHONE
#import <UIKit/UIKit.h>
@interface MyCustonControl : UIControl
...
@end
#else
#import <Cocoa/Cocoa.h>
@interface MyCustomControl : NSControl
...
@end
#endif
ビューコントローラーでコントロールを構築すると、これは正常に機能します。Interface Builder を使用しようとすると、UIView のカスタム クラスを MyCustomControl に設定できません。リストに表示され、入力することはできますが、何か別のものにフォーカスしてから再度ビューにフォーカスすると、カスタム クラスは UIView に戻ります。
そうでないことを確認するために、両方の実装で initFromCoder を実装しました。
これを修正する方法はありますか?IB がおかしいのでしょうか、それともクラスを別の方法で定義する必要がありますか?