22

私のストーリーボード ファイルでは、UITableView で複数のプロトタイプ セルを設計しています。各セルには、独自の一意のセル識別子があります。

セクションと行に応じて、メソッド内のプロトタイプ セルの 1 つをキューから取り出します - tableView:cellForRowAtIndexPath:

ほとんどのプロトタイプ セルでは、行の高さを変更していません。私のストーリーボードでは、それらの高さは UITableView の「Size Inspector」の下にあるプロパティ「Row Height」によって決定されるようです。

1 つのプロトタイプ セルについて、特定の UITableViewCell の「Size Inspector」の下にある「Row Height」プロパティを使用して高さを変更しました。チェックボックス「カスタム」もチェックされています。

私のストーリーボードでは、これはうまくいくようです。しかし、実行時にセルがデキューされて TableView に追加されると、すべてのセルがデフォルトの行の高さになります。

現在、他の投稿で言及されているメソッド tableView:heightForRowAtIndexPath: を認識していますが、ストーリーボードでカスタム行の高さを既に設定しているため、使用するのは少し奇妙に思えます。

このプロパティが機能しない理由を誰かが知っていますか? このプロパティは、さまざまな状況で使用できるように修復できますか?

ありがとう

4

2 に答える 2

16

heightForRowAtIndexPathセルが表示される前、つまりが呼び出される前に (テーブルの各行に対して)cellForRowAtIndexPath呼び出されます。これは、下層のスクロール ビューやスクロール インジケーターなどのレイアウトを計算するために必要です。

于 2012-08-16T20:39:16.477 に答える