Mam więc bardzo podstawowy problem. Mam to UITableView
wewnątrz view
i chciałbym, aby wysokość tego stołu była tak wysoka, jak to konieczne, aby wyświetlić WSZYSTKIE wiersze w tabeli. Dlatego nie chcę móc przewijać, chcę tylko, aby wszystkie wiersze się pojawiły. (Wiersze są dynamiczne w liczbie i height
).Zmień rozmiar wysokości UITableView tak, aby zmieściła się tylko całkowita wielkość zawartości.
-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
CGSize cellSize = [[[_stepsArray objectAtIndex:indexPath.row]content] sizeWithFont:[UIFont boldSystemFontOfSize:18.0f] constrainedToSize:CGSizeMake(528.0f, CGFLOAT_MAX)lineBreakMode:NSLineBreakByWordWrapping];
return cellSize.height;
}
Jeśli są rzędy 20, tabela może być bardzo duży, a jeśli jest tylko jeden rząd, to będzie bardzo małe i innych materiałów nie pojawi się poniżej 19 rzędów.
nigdy nazywam [Tableview reloadData]. Gdzie powinienem to wtedy umieścić? – abisson
po zakończeniu ustawiania _stepsArray (który zakładam, że jest twoim źródłem danych). –
Czy heightForRowAtIndexPath nie będzie wywoływany dwukrotnie z tym? Również ... czy nie ma o wiele prostszego sposobu na zrobienie tego? Wydaje mi się, że widziałem już wiele aplikacji, w których wysokość tabeli zależy od całkowitej liczby wierszy ...! Dzięki! – abisson