if (indexPath.row == 2)
{
RestaurantTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"RestaurantCell"];
if (!cell)
{
[tableView registerNib:[UINib nibWithNibName:@"RestaurantCell" bundle:nil] forCellReuseIdentifier:@"RestaurantCell"];
cell = [tableView dequeueReusableCellWithIdentifier:@"RestaurantCell"];
CAGradientLayer *gradient = [CAGradientLayer layer];
gradient.frame = cell.gradientView.bounds;
gradient.colors = [NSArray arrayWithObjects:(id)[[UIColor clearColor] CGColor], (id)[[UIColor blackColor]CGColor], nil];
[cell.gradientView.layer insertSublayer:gradient atIndex:0];
cell.gradientView.alpha = 0.9;
}
NSData *imgData2 = [NSData dataWithData:restaurantPhotoArray[1]];
cell.restaurant2Photo.image = [UIImage imageWithData:imgData2];
cell.restaurant2Photo.contentMode = UIViewContentModeScaleAspectFill;
[cell.restaurant2Photo setClipsToBounds:YES];
NSDictionary *morning2 = [[NSDictionary alloc]initWithDictionary:NorthRestaurantsArray[1]];
cell.restaurant2Name.text = morning2[@"name"];
cell.restaurant2Name.numberOfLines = 0;
[cell.restaurant2Name sizeToFit];
}
У меня есть пользовательская ячейка, которая реализована в cellForRowAtIndexPath с кодом выше. Когда таблица отображается, restaurant2Photo отображает указанное изображение, а правильный текст установлен в ресторан2Name, однако sizeToFit не влияет на ярлык, поэтому его размер остается постоянным, как определено в файле .xib. У меня есть другая пользовательская ячейка, которая отображается в indexPath 0 и 1, где sizeToFit работает нормально, однако, когда она попадает в indexPath 2, а TableTableViewCell sizeToFit не работает. Кто-нибудь может предположить, почему это может произойти? Спасибо за любую помощь заранее :)Невозможно изменить размер UILabel в пользовательском UITableViewCell
Ячейка, которую вы загружаете в Indexpath 0 и 1, встроена в XIB? – itsji10dra
Да, точно так же, как indexPath 2 – RodMatveev
Вы проверили, что contentView имеет конечный запас 0 px и нижнее поле 0 px с его надписью? –