私のテーブルビューのフッターは、ユーザーからのツイートを表示するビューであるため、ツイートを取得するまでその高さはわかりません。メソッドFooterViewController
を持つrefreshTweets
を作成しました。追加します。 viewDidLoad
にあります:
FooterViewController *controller = [[FooterViewController alloc] initWithNibName...];
[[self tableView] setFooterView:[controller view]];
[controller refreshTweets];
refreshTweets
メソッドでは、ツイートを読んで全高を計算し、ビュー(フッター)の高さをリセットします。
self.view.frame = newFrame;
しかし、それは意味がありません。フッターの高さは、Interface Builderで設定した高さのままです。何か足りないものや、これを行う別の方法はありますか?
ありがとう!
編集:インターフェイスビルダーでビューのサイズを十分に小さく変更できます。ツイートの高さを計算してview.frameを設定すると拡大されますが、テーブルビューでは、フッターに以前の高さ、つまり余分なスペースがあると見なされます。はテーブルビューの外側にあり、テーブルを上にドラッグした場合にのみ表示されます。
myTable.tableFooterView = myFooterView;
フッタービューをテーブルに再割り当てします。テーブルは、新しいフッターがあることを認識し、フッターの適切なサイズに必要なレイアウトを再実行します。