0

私は算術アプリを構築しています & その中にNSObjectNumbers と Digits のサブクラスがあります.これらの両方に、データソース (数値または数字) とデリゲート、ビューコントローラーを受け取る対応するビューオブジェクトがあります。

ビューとモデルを連携させて、数字ビューを対応する数字のプロパティとして設定すると便利であることがわかりました。

たとえば、 Number クラスには、NSMutableArrayその数字を保持するプロパティがあります。

対応する NumberView のサイズを知りたい場合は、コントローラーに次のようなコードを記述できます。

-(void) updateNumberViewFrameSize:(ACNumberView*) sender
{
    NSUInteger i;
    float width = 0, height = 0;
    for (ACDigit* digit in [sender.dataSource returnNumberViewDataSource].digitArray)
    {
        width += digit.digitView.size.width;
        height += digit.digitView.size.width;
    }
    sender.frame = CGRectMake(sender.frame.origin.x, sender.frame.origin.y, width, height);
}

コードは問題なく動作しますが、モデル自体が使用していない場合でも、モデルからのビューへのポインタを保持することはお勧めできません。

それが悪い習慣である場合、潜在的な落とし穴は何ですか?このタイプの end を達成するためのより良い方法はありますか?

4

1 に答える 1