Zaprojektowałem moją niestandardową komórkę w IB, podklasowałem ją i połączyłem swoje gniazdka z moją niestandardową klasą. Mam trzy podstrony w treści komórki, które są: UIView (cdView) i dwie etykiety (titleLabel i emailLabel). W zależności od danych dostępnych dla każdego wiersza, czasami chcę mieć UIView i dwie etykiety wyświetlane w mojej komórce, a czasem tylko dwie etykiety. Staram się w ten sposób ustawić ograniczenia, jeśli ustawię właściwość UIView na ukrytą lub usunę ją z podglądu, dwie etykiety zostaną przesunięte w lewo. Próbowałem ustawić wiodące ograniczenie UIView na Superview (zawartość komórki) dla 10px i UILabels wiodące ograniczenia dla 10 px do następnego widoku (UIView). Później w moim kodzie
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(IndexPath *)indexPath {
...
Record *record = [self.records objectAtIndex:indexPath.row];
if ([record.imageURL is equalToString:@""]) {
cell.cdView.hidden = YES;
}
Chowam swoją komórkę. CdView i chciałbym, aby etykiety przesunęły się w lewo, jednak pozostają one w tej samej pozycji w komórce. Próbowałem usunąć cell.cdView z podglądu, ale to też nie działało. Załączam obraz, aby wyjaśnić, o co mi chodzi.
Wiem, jak to zrobić programowo i nie szukam tego rozwiązania. Chcę ustawić ograniczenia w IB i oczekuję, że moje widoki podrzędne będą się dynamicznie przemieszczać, jeśli inne widoki zostaną usunięte lub ukryte. Czy można to zrobić w IB z automatycznym układem?
.....