Я не могу понять, почему мои UILabels в моем обычном TableViewCell
ноль в CellForRowAtIndexPath. Я использовал тот же метод, что и для предыдущего TableView в другом представлении Controller. Вот то, что я уже проверил:Отображение UILabel (null) в пользовательском UItableviewcell
- Сотовый Стиль Пользовательские
- Cell имеет уникальный идентификатор «profilecell» класса
- Cell является желаемого пользовательского типа источника
- данные и делегированных связаны с видом контроллер
- Каждый из 5 кнопок/этикеток подключен к соответствующему собственности в пользовательском классе выбран
- Dynamic Прототипы
Я могу изменить цвет фона ячейки и заполнить textLabel.text - это всего лишь мои UILabels
, которые не заполнены.
Адрес CellForRowAtIndexPath
. Это тот же самый метод, что и мой другой TableVC
, который работает. Кроме того, мне не нужно на самом деле повторно использовать эту настраиваемую ячейку, должен ли я использовать другой метод?
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifierProfile = @"profilecell";
ProfileSection0TableViewCell *profilecell = [tableView dequeueReusableCellWithIdentifier:CellIdentifierProfile];
if (profilecell == nil) {
profilecell = [[ProfileSection0TableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifierProfile];
}
if (indexPath.section == 0) {
[profilecell setBackgroundColor:[UIColor colorWithRed:54/255.0f green:61/255.0f blue:147/255.0f alpha:1.0f]];
if (indexPath.row == 0) {
profilecell.labelName.text = _userProfile.fullName;
NSString *test = [NSString stringWithFormat:@"%@", profilecell.labelName.text];
NSLog(@"text %@", test); //shows that label is (null)
profilecell.labelName.textColor = [UIColor whiteColor];
//profilecell.labelSpecialty.text = _userProfile.specialty;
//profilecell.labelSpecialty.textColor = [UIColor whiteColor];
}
}
return profilecell;
}
Большое спасибо.
.h файл:
@interface ProfileSection0TableViewCell : UITableViewCell
@property (nonatomic, weak) IBOutlet UILabel* labelName;
@property (nonatomic, weak) IBOutlet UILabel* labelSpecialty;
@property (nonatomic, weak) IBOutlet UILabel* labelCurrentRole;
@property (nonatomic, weak) IBOutlet UILabel* labelPosition;
@property (nonatomic, weak) IBOutlet UIButton* facePicture;
@end
.m файл:
@implementation ProfileSection0TableViewCell
@synthesize labelName, labelSpecialty, labelPosition, facePicture, labelCurrentRole;
@end
EDIT:
Похоже ProfileSection0TableViewCell правильно распределена, но член вары внутри клетки равны нулю. А в торговых точках, вот соединения:
- facePicture - Кнопка
- labelName- UILabel "человек"
- labelPosition - UILabel "позиция"
- Элемент списка - UILabel "специальность"
- labelCurrentRole - UILabel названием школы
Что можно сказать о значении переменной '_userProfile.fullName' и вы можете поделиться тем, как вы настроите' UILabel' _labelName_ в пользовательских 'UITableViewCell' класса _ProfileSection0TableViewCell_ – Aladin
_userProfile.fullName не равно нулю - он имеет все правильно данные в объекте – khajj
Согласно вашему комментарию после 'NSLog', ваш тест показывает, что' NSString * 'named' test' является 'nil', а не том, что метка' labelName' ячейки является 'nil'. Вам нужно копать немного глубже. Вы уверены, что 'profileCell' также не' nil'? Как насчет IBOutlets в ячейке? Правильно ли они подключены? – Aaron