私はUITableViewController
を持っていて、それぞれを含んでおり、UICollectionView
の内容は完全に見えるはずです。私の問題は、UITableViewCell
の高さを返すとき、その内容のUICollectionView
のcontentSize
を計算する方法を理解できないため、正しい高さを返すことができないということです。UITableViewCell内のUICollectionView、UITableView動的高さ
答えて
はい、これを行うことができます。動的なテーブルビューの高さが必要な場合は、テーブルビューの推定高さも設定する必要があります。あなたがそうでないため、再利用可能なセルロジックAPIにあなたの細胞は、コレクションview.Whenあなたのセットアップインナーcollectionviewにデータを再ロードするために、外側テーブルビューの試みであなたの細胞と全く同じ高さを持っていることを確認する必要があり
tableView.rowHeight = UITableViewAutomaticDimension
tableView.estimatedRowHeight
ます以前のコレクションビューを区別しない。
更新日:
を私は、細胞内のテーブルビューを保存していたケースがありました。
内部セルは、tableviewが格納されている場所のように見えます。
@IBOutlet weak var uploadedDocumentsTableView: UITableView! // has 0 to left right top botton margin to superview on storyboard prototype (Contenview)
@IBOutlet weak var tableViewCellHeight: NSLayoutConstraint! //To constraint the height of the tableview inside the cell.
//This function is called when the outer tableview delegate calls cellForRowAtIndexPath to deque a cell.
override func setupWithCellModel(cellModel: CRCustomerAreaDetailsCellModel) {
let castedCellModel = cellModel as? CRCustomerAreaDocumentUploadCellModel
if let documents = castedCellModel?.docUploadItem?.documents {
tableViewCellHeight.constant = CGFloat(documents.count * 60)
}
uploadedDocumentsTableView.reloadData()
}
普通
extension CRCustomerAreaDocumentUploadV2GalleryCell: UITableViewDataSource {
public func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {
return 60
}
public func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
let castedCellModel = cellModel as? CRCustomerAreaDocumentUploadCellModel
if let documents = castedCellModel?.docUploadItem?.documents {
return documents.count
}
return 0
}
public func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
...
//Return your cell
}
}
私の外側のテーブルビューの高さは、自動寸法によって計算されますが、内側のテーブルビューのために、私は自分で高さを指定する必要があります。
私は既にこれを行っていますが、これは他の場合にはうまくいきます...しかし、その場合UITableviewCell内のUICollectionVIewの...これは期待どおりに機能しません。 –
UIScrollViewには、正しい組み込みコンテンツサイズがありません。 –
はい、すべてのコレクションビューの行の高さが同じ場合はプロパティに格納できます。(numberOfrows * rowheight) –
私はこれについて何度も読んでいます。 TableViewCellの内部にCollectionViewを配置しないでください。大量のトラブル(フレーム落ちなど)が発生することがあります。代わりにStackViewを使ってみましたか?あなたはAsyncDiplayKitを試しましたか?
私の要件は、動的なスクロール可能な項目を持つ垂直の動的なスクロール可能なページを持っているということです。これを行うための他のアイデア.... UIStackViewはこの場合に役立ちません –
申し訳ありませんが、UITableViewAutomaticDimensionを使用してコレクションビューに正しい組み込みコンテンツサイズがないため、内部でUICollectionViewでセルのサイズを判断することはできません。あなたはUITableViewDelegateのheight方法オーバーロードする必要があります
- (CGFloat)tableView:(UITableView *)tableView
heightForRowAtIndexPath:(NSIndexPath *)indexPath;
をそして、この方法から、正しい高さを返します。
もう一つの方法は、UICollectionViewが含まれており、コレクションビュー(私のコードからの例)の内容を制御するカスタムビューを作成することです:
- (CGSize)intrinsicContentSize
{
CGSize size = CGSizeMake(UIViewNoIntrinsicMetric, self.collectionView.collectionViewLayout.collectionViewContentSize.height);
return size;
}
- (void)addTags:(NSArray<BLTag*>*)tags
{
[_tagsList addObjectsFromArray:tags];
[self _reloadData];
}
このビューに戻り、正しい固有のコンテンツサイズので、あなたがセルにそれを挿入することができます自動寸法高さ。
- 1. UITableViewCell内のUICollectionViewの自動高さ
- 2. iOS:動的セル高さを持つUITableViewCell内のUITableView
- 3. 動的高さUITableViewCell
- 4. UITableViewの動的高さ
- 5. UICollectionViewの動的セルの高さ
- 6. UITableView内のUITableViewCell
- 7. UITableViewCellの動的高さのサブビュー
- 8. 動的UITableViewCellの設定高さ
- 9. 動的高さを持つUITableViewCellのUILabel
- 10. 動的UITableViewCell例外のある高さ
- 11. UITableViewCellの動的な高さを取得
- 12. 動的な高さを持つUITableViewCell、UITextView
- 13. iOSのUITableViewCell内のUITableView
- 14. は--- UITableViewCellの内側のUITableView、
- 15. UITableViewCellのUICollectionView?
- 16. UITableViewCell内のUICollectionViewを強制的に操作する
- 17. UITableViewCellの内部にUITableViewを追加しています。テーブルビューの高さは、コンテンツ
- 18. 動的高さを持つ別のUITableView(Master)のカスタムセル内でサブビューとして追加されるUITableView(スレーブ)の動的高さを達成
- 19. 動的UITableViewCellセル内での画像の遅延読み込みでの高さ
- 20. 内部のUICollectionViewに基づくテーブルビューの自動設定高さ
- 21. indexpathを移動した後、UITableviewCell内のUICollectionView
- 22. UITableView内の水平UICollectionViewのテーブルビューのセルサイズ
- 23. Resize UICollectionView高さ
- 24. UICollectionViewのUITableView
- 25. スクロールアップ中のUITableViewCellの動的高さの問題
- 26. AutoLayoutを使用したUITableViewCellの動的イメージの高さ
- 27. セルの高さが動的である場合のUITableViewの高さの設定
- 28. 動的にUITableViewCellの高さを拡張するには?
- 29. IBのuitableviewcellでカスタムビューを使用する動的な高さで
- 30. 動的UITableViewプロトタイプの行の高さへのアクセス
http://eithanshavit.com/2015/04/18/Dynamic_Size_UICollectionView_Cell.html – Amanpreet
いくつかのコードを表示できますか?テーブルビューに追加するのではなく、コレクションビュー全体を使用しないのはなぜですか? – Joshua
コードは次のURLから入手できます:https://drive.google.com/file/d/0B3bD5h4vCJXcc2hnSWk0TXd1LWs/view?usp=sharing –