私はこの質問が何百回も前に尋ねられたことを知っていますが、それは実際には解決されていません(または少なくとも私が望む方法で)。かなり複雑なUITableViewCellの設定があります。はcell.backgroundView
、かなりの量のCoreGraphicsとCoreTextを使用するUIViewサブクラスからロードされます。コードにはCTFramesetterSuggestFrameSizeWithConstraints
がたくさんあるので、メソッドでクラスを複製することをお勧めしheightForRowAtIndexPath
ます。
indexPathをキー、高さを値としてNSMutableDictionaryを作成することで、これを解決できると思います。しかし、それから私はheightForRowAtIndexPath
最初に呼ばれるという問題に直面しています。セルの高さを推測し、セルのUIViewサブクラスのレンダリングが終了したら、委任を使用してセルの高さを設定することで、この問題を解決できると思います。
しかし、これは私に問題を残します、どうやってこれを委任するのですか?また、スクロールが極端に途切れるのを防ぐにはどうすればよいですか?セルが作成され、一瞬でサイズ変更されるためです。