Есть два способа добраться до ваших пользовательских подпредставлений.Более простой способ - использование тегов.Каждое представление имеет свойство tag
, которое является целым числом.Вы можете установить тег в кончике, и установить или получить его в коде.Вы можете искать дерево представлений с данным тегом, отправив viewWithTag:
в корень дерева.Так, например, вы могли бы дать вашему labelTime
представлению тег 57, а в вашем коде вы бы нашли такое представление:
UILabel *label = (UILabel *)[cell viewWithTag:57];
Недостатком использования тегов является то, что вы должнысинхронизируйте номера тегов между вашим пером и вашим кодом.Если они не синхронизируются, вы либо получите неправильное представление, либо получите ноль (и, поскольку вы можете отправлять сообщения на ноль, система не выдаст вам ошибку, когда это произойдет).Тем не менее, теги настолько удобны, что довольно часто их используют.
Другой способ - создать собственный подкласс UITableViewCell
со свойством IBOutlet
для каждого пользовательского подпредставления.Вы можете подключить выходы к подпредставлениям в кончике и получить доступ к подпредставлениям через свойства в вашем коде:
MyTableViewCell *myCell = (MyTableViewCell *)cell;
UILabel *label = cell.labelTime;
Это влечет за собой написание гораздо большего количества шаблонов, чем при использовании тегов, но имеет то преимущество, чтовы получите предупреждения или ошибки (либо во время компиляции, либо при первой попытке загрузить перо), если ваш перо и ваш код не синхронизированы.