Mam problem ze zmianą rozmiaru tableHeaderView. To proste nie działa.
1) Utwórz UITableView i UIView (100 x 320 pikseli);
2) Ustaw UIView jako tableHeaderView w UITableView;
3) Buduj i ruszaj. Wszystko w porządku.
Teraz chcę zmienić rozmiar tableHeaderView, więc dodaję ten kod w viewDidLoad:
self.tableView.autoresizesSubviews = YES;
self.tableView.tableHeaderView = myHeaderView;
self.tableView.tableFooterView = myFooterView;
CGRect newFrame = self.tableView.tableHeaderView.frame;
newFrame.size.height = newFrame.size.height + 100;
self.tableView.tableHeaderView.frame = newFrame;
Wysokość tableHeaderView powinna mieć wartość 200, ale pojawia się wartość 100.
Jeśli napiszę:
self.tableView.autoresizesSubviews = YES;
CGRect newFrame = myHeaderView.frame;
newFrame.size.height = newFrame.size.height + 100;
myHeaderView.frame = newFrame;
self.tableView.tableHeaderView = myHeaderView;
self.tableView.tableFooterView = myFooterView;
Następnie zaczyna się od 200 wysokości, tak jak chcę. Ale chcę mieć możliwość modyfikowania go w czasie wykonywania.
Próbowałem też tego bez powodzenia:
self.tableView.autoresizesSubviews = YES;
self.tableView.tableHeaderView = myHeaderView;
self.tableView.tableFooterView = myFooterView;
CGRect newFrame = self.tableView.tableHeaderView.frame;
newFrame.size.height = newFrame.size.height + 100;
self.tableView.tableHeaderView.frame = newFrame;
[self.tableView.tableHeaderView setNeedsLayout];
[self.tableView.tableHeaderView setNeedsDisplay];
[self.tableView setNeedsLayout];
[self.tableView setNeedsDisplay];
Chodzi o to: Jak zmienić rozmiar tableHeaderView w czasie wykonywania ???
Czy ktoś może to zrobić?
Dzięki
ja ja