5
UIViewに強制的に再描画させる最も強力な方法は何ですか?
アイテムのリストを含むUITableViewがあります。アイテムを選択すると、viewControllerがプッシュされ、次の処理に進みます。fromメソッドviewDidLoad私は、サブビュー(drawRectがオーバーライドされたUIViewサブクラス)で必要なデータのURLRequestを発行します。クラウドからデータが到着すると、ビュー階層の構築を開始します。問題のサブクラスにデータが渡され、そのdrawRectメソッドがレンダリングに必要なすべてを備えています。 だが。 drawRectを明示的に呼び出さないため-Cocoa-Touchはそれを処理します-Cocoa-Touchに本当にこのUIViewサブクラスをレンダリングしてほしいと通知する方法はありません。いつ?今はいいだろう! [myView setNeedsDisplay]を試しました。このようなことは時々うまくいきます。非常にむら。 私は何時間もこれに取り組んできました。UIViewの再レンダリングを強制する堅実で保証されたアプローチを私に提供してくれる誰かができますか? 以下は、ビューにデータをフィードするコードのスニペットです。 // Create the subview self.chromosomeBlockView = [[[ChromosomeBlockView alloc] initWithFrame:frame] autorelease]; // Set some properties self.chromosomeBlockView.sequenceString = self.sequenceString; self.chromosomeBlockView.nucleotideBases = self.nucleotideLettersDictionary; // Insert the view in the view hierarchy [self.containerView addSubview:self.chromosomeBlockView]; [self.containerView bringSubviewToFront:self.chromosomeBlockView]; // A vain attempt to convince Cocoa-Touch that this view is …