Подтвердить что ты не робот

UITableViewCell Установить выбранное изображение

пытается выяснить, как установить выбранное изображение для tableViewCell.

Старый способ записи был cell.selectedImage, но с 3.0 был устаревшим.

Я пробовал много вещей, но не могу заставить его работать.

Спасибо! Джош

4b9b3361

Ответ 1

В соответствии с устаревшими документами UITableViewCell Methods вы должны использовать свойство imageView highlightImage как замену selectedImage. Например:

UITableViewCell *cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:nil];
cell.imageView.image = [UIImage imageNamed:@"deselected_image.png"];
cell.imageView.highlightedImage = [UIImage imageNamed:@"selected_image.png"];

Ответ 2

Вы можете установить выбранный backgroundView, как показано ниже.

        UIImageView *selBGView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"urimage.png"]];
                cell.selectedBackgroundView = selBGView;

Ответ 3

Это не сработало, потому что вы можете установить изображение нормального состояния следующим образом

cell.imageView.image = ///

Попробуй - это сработало для меня отлично!

UIImageView *selBGView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"urimage_selected.png"]];
 cell.selectedBackgroundView = selBGView;
[selBGView release];

UIImageView *BGView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"urimage.png"]];
 cell.backgroundView = BGView;
[BGView release];

Ответ 4

Попробуйте это...

    UIImage *bgImage = [UIImage imageNamed:@"icon_call.png"];
    UIImageView *bgImageView = [[UIImageView alloc] initWithImage:bgImage];

    [bgImageView setFrame:CGRectMake(280, 2, 30, 38)];

//Finally give this imageView to the cell

     [cell.contentView addSubview:bgImageView];

Надеюсь, что это решит вашу проблему!

Ответ 5

Используйте это!:

selectionBackground = [UIImage imageNamed:@"background.png"];
cell.selectedBackgroundView =[[UIImageView alloc] init];
((UIImageView *)cell.selectedBackgroundView).image = selectionBackground;