これは基本的な質問のように思えるかもしれませんが、私はまだプロパティを把握しているので、ご容赦ください。
独自の描画を行うカスタム NSView サブクラスがあります。@property
セッターtypedef enum
用と人間が読める整数用の を使用して、さまざまなスタイルのサポートをセットアップしました。それはうまく機能しますがsetNeedsDisplay:YES
、コントロールを手動で呼び出すか親ウィンドウのサイズを変更しない限り、スタイルを設定した後にビューは再描画されません。
[self setNeedsDisplay:YES]
論理的には、解決策は単にクラスのメソッドでa を実行することだと思うでしょうがsetStyle:
、私は一生、それを適切に実行する方法を理解できません。オーバーライドしようとするとsetStyle:
、「書き込み可能なアトミック プロパティ 'style' は、合成されたゲッターとユーザー定義のセッターをペアにすることはできません」と不平を言うだけです。
この状況で何をすべきですか?