「レイアウト用のテーブルを使用しない」の背後にある動機は、プレゼンテーション(CSS)とコンテンツ(HTML)の分離を強制することです。それはマークアップ言語のことです。
ココアでは、パラダイムはモデルビューコントローラです。モデル(コンテンツ)をビュー(プレゼンテーション...ソート)から独立させたいと思っていますが、実際は同じではありません。
あなたがiOSについて話している場合、この方法でUITableViewを使用すると完全にコーシャーです。これは、何かで作ることができる「細胞」の表を管理するのが仕事だからです。あなたが本で見つけるかもしれないような情報の表のためのものであるという偽証はありません。 UITableViewの "table"は、実際にはHTMLの "table"と同じ概念ではありません。例えば、UITableViewはHTMLテーブルのやり方でカラムをサポートすることさえできません。
あなたがMac OS Xについて話しているのであれば、NSTableViewは概念的にはHTMLテーブルに近いです。ほとんどの場合、データ用に使用されますが、たとえばチェックボックスのグリッドを作成するために使用できます。 (しかし、それがあなたがやろうとしているのであれば、NSMatrixはおそらくもっと良い選択です)。
HTMLテーブルをレイアウトに使用する最悪の犯罪は、複数の列と行にまたがる複数のセルNSTableViewやUITableViewでアナログを持っていない技術もあります。この種のレイアウトを実現するためにNSTableViewを使用することはできませんでした。
ので:
は、レイアウトのために使用されている名前に単語「テーブル」とのことについて取りつくしないでください。それは悪いことではありません、ココアは実際には非常によく設計されています、あなたはちょうど領土に慣れなければなりません。
コンテンツ/モデルをプレゼンテーション/ビューとは別に保つことの精神に忠実にしてください。すべてがObjective-C(HTML & CSSのような2つの独立した言語の代わりに)にあるので、最初は見にくいです。
対象プラットフォーム:Mac OS XまたはiOS? –
私はiOSを推測しました。なぜなら、UITableViewはレイアウトのどこにでも使われているからです(Apple独自の設定アプリなど)。同様の理由がMac OS Xにも当てはまりますが、NSTableViewを使ってレイアウトを表示すると、たいていの場合、おそらく過剰です。 – benzado
@benええ、私はOPがOS Xを望んでいたと思ったが、質問を再読した後、わからない。それがOS Xの場合、 'NSTableView'にはいくつかの選択肢があります。 –