あなたが、その後のUITableViewを使用して、Facebook上でのようにニュースフィードに似たものを作成したい場合は
は、移動するための方法です。いくつかの異なる種類のカードレイアウトに応じて、各カードレイアウトごとに異なる動的プロトタイプUITableViewCellを作成することができます。 UITableViewsはこれに最も自然であり、パフォーマンスにも優れています。基本的には、「再利用可能なUIScrollView内のUIView」と言って、最初にお伝えしたことです。 UITableViewはUIScrollViewであり、UITableViewCellsは基本的にUIViewであり、はい、再利用されます。いつでも、スクリーン上に何が表示されるのに必要なだけの十分なセルがあります。ニュースフィードに100個のアイテムがある場合、まだ7個のセルしかなく、ニュースフィードをスクロールすると、7個のセルが再利用されてニュースフィードに異なるアイテムが作成されます。
動的高さの場合:ストーリーボードで動的高さを明示的に指定することはできません。代わりに、あなたのラベルの高さを変えて、線の属性を0にします。それが0になると、セルの上端から下端まですべて適切に配置されていることを確認する必要があります。あなたには多くの要素があるかもしれませんが、iOSは完全に厳密に高さを決定できるように制約が必要です。
対応するビューコントローラでは、あなたのviewDidLoad
方法で次のように書きます。
tableView.rowHeight = UITableViewAutomaticDimension
その後、私はあなたのスクロールがのようにグラグラされないようにもtableView.estimatedRowHeight = 150
またはそのような何かをやってお勧めします。
動的なセルの高さで通常行われるため、スクロールしない(特にスクロールアップする)ための100%ソリューションは、tableViewデリゲートメソッドtableView(:heightForRowAtIndexPath)
メソッドを実装することです。
これは、これをどのように開始するのかについてのちょっとした先駆けだと言いました。ダイナミックな高さの話題は、Web上の多くのチュートリアルや、人々が遭遇する問題についてのStackoverflowに関する多数の質問で見つけることができます。
UICollectionViewもオプションです –
これは、セルのcontentView内のビューで、その背景色が異なります。 – Tj3n
ニュースフィード、テーブルビュー、コレクションビューなどのリストをこれらのリストとして表示するには、実際のセルには、テーブルビューの背景と同じ色の境界線があるカスタムビューが含まれます。私は現在、私のアプリに同じ機能を追加しています。それがどうやってそれにアプローチするのですか?あなたのセルは、セルよりも小さくするために、実際のコンテンツには明確な背景と制約があります。 – Scriptable