#iphone #objective-c
#iPhone #objective-c
Вопрос:
Я работаю над приложением, в котором данные поступают с сервера после синтаксического анализа, и показываю эти данные, такие как заголовок, title и image в пользовательской tableview
ячейке, которые имеют изображение ячейки [градиентное изображение], и эти изображения генерируются динамически. Я хочу изменить цвет фона изображения [оранжевый цвет] после выбора для перехода к другому viewcontroller
классу.
Ответ №1:
Hii,
используйте
- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cellforRowAtIndexPath:(NSIndexPath *)indexPath {
для изображения :
cell.selectedBackgroundView = [[[UIImageView alloc] init] autorelease];
UIImage *img = [UIImage imageNamed:@"yourImage.png"];
((UIImageView *)cell.selectedBackgroundView).image = img;
для цвета :
cell.selectedTextColor = [UIColor yourcolor]
Ответ №2:
В
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
способ
Редактировать: вы можете сделать
CustomTableCell *cell = (CustomTableCell *)[table cellForRowAtIndexPath:indexPath];
UIView *backView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 44)];
backView.backgroundColor = [UIColor orangeColor];
cell.backgroundView = backView;
или что еще с этой ячейкой.
Комментарии:
1. Для этого я бы перезаписал метод — (void)setSelected:(BOOL)selected animated:(BOOL)animated ячейки табличного представления…
Ответ №3:
я думаю, что лучший способ — это:
UIView *view = [UIView alloc] initWithFrame:CGRectMake(0 ,0 , cell.frame.size.width, cell.frame.size.height]);
view.backgroundColor = ....;
cell.selectedBackgroundView = view;