Я не уверен, какой из них использовать? cell.contentView иногда дает мне странные ошибки, такие как [uiview settext] ... ?? Я пытался установитьText на UILabel *iPhone SDK: [cell.contentView viewWithTag: 1] или [cell viewWithTag: 1]?
ответ
Используемый вариант зависит от того, как вы создали ячейку в первую очередь. Если вы добавили свой UILabel в качестве подзаголовка contentView (например, [cell.contentView addSubview:myLabel]
), вы должны использовать [cell.contentView viewWithTag:1]
для его получения (при условии, что у метки на самом деле есть метка 1).
Однако, я бы предупредил вас об использовании -viewWithTag:
в первую очередь. Это довольно полезно для того, чтобы тыкать на вещи, но это не очень надежно (потому что, если у двух представлений есть один и тот же тег, вы только получите один из них), и он не очень эффективен (он должен проходить через subviews каждый раз, когда вы используй это). Вместо этого я рекомендую создать подкласс UITableViewCell
, который имеет свойства для ваших пользовательских представлений, поэтому вы можете получить к ним доступ напрямую.
- 1. Tableview [cell.contentview viewwithtag:] возвращается ноль
- 2. UITableCellView viewWithTag
- 3. вопросов с viewWithTag в iphone
- 4. Почему UItableViewCell viewWithTag возвращает нуль?
- 5. Почему это эффективно использовать viewWithTag?
- 6. Извлечь ярлык из tableView cell iphone sdk
- 7. Почему viewWithTag возвращается ноль
- 8. Проблема с "viewWithTag"
- 9. viewWithTag and addSubview
- 10. ViewWithTag возникают проблемы с UICollectionView
- 11. ViewwithTag не извлекает метку ячейки
- 12. Xcode 6 и viewWithTag не
- 13. iphone sdk: Невозможно повторно использовать ячейку с viewWithTag (не может установитьText для повторных меток)
- 14. viewWithTag: возвращает nil после reloadData
- 15. Как использовать ViewWithTag в Swift?
- 16. Элемент UITableViewCell больше не доступен через [cell.contentView viewWithTag] при прокрутке вниз
- 17. UIView viewWithTag 0 проблема
- 18. ObjectiveC - [self.view viewWithTag] возврат
- 19. iOS: Использование пользовательского UITableViewCell против использования Cell viewWithTag?
- 20. viewWithTag возвращает nil для UITableViewCell
- 21. Ярлык в [cell viewWithTag:] всегда возвращается как ноль
- 22. viewWithTag, возвращающий nil внутри cellForRowAtIndexPath метод
- 23. viewWithTag используется вместе с IBOutletCollection
- 24. tableview viewWithTag не извлекает объекты UIElements-c
- 25. Как скрыть UILabel с viewWithTag?
- 26. viewWithTag может использовать ограниченное время
- 27. XCode 6 UICollectionview viewwithtag не работает
- 28. ViewWIthTag возвращает nil (возвращает объект только один раз)
- 29. Тема 1: EXC_BAD_INSTRUCTION (код = EXC_1386_INVOP, субкод = 0x0)
- 30. viewWithTag не возвращает объект в поиске
+1 Рекомендация для подсмотров как ivars – Tim
Благодарим вас за быстрый ответ. Я хотел бы больше узнать о вашем альтернативном предложении. Не могли бы вы дать мне больше намеков на это? Как небольшой образец кода будет очень полезен для меня прямо сейчас. благодаря! – RoundOutTooSoon
Вы использовали ивары с другими вещами, не так ли? Просто создайте подкласс UITableViewCell и добавьте к нему свои ivars. Я также рекомендовал бы, чтобы этот подкласс настраивал свои дочерние объекты в своем методе -initWithStyle: reuseIdentifier :. Вы также должны объявить @properties для этих ivars, чтобы ваш контроллер мог получить к ним доступ. При создании вашей ячейки в -tableView: cellForRowAtIndexPath: вы можете просто вызвать вызов [tableView dequeueReusableCellWithIdentifier: @ "foo"] (YourCellSubclass *). –