Изменить положение изображения в tableView в iphone? - PullRequest
0 голосов
/ 24 ноября 2010

Я хочу показать изображение в каждой ячейке tableView в середине, для этого в методе tableView cellForRowAtIndexPath я могу настроить каждую ячейку так, как мне нужно

UIImage *backgroundImage = [UIImage imageWithContentsOfFile:
                            [[NSBundle mainBundle] 
                             pathForResource:@"phone" 
                             ofType:@"png"]];

infoView = [[UIView alloc]initWithFrame:cell.frame];
lblCell1 = [[[UILabel alloc]initWithFrame:CGRectMake(0, 0, (cell.frame.size.width)/3, cell.frame.size.height)]autorelease];
lblCell1.backgroundColor = [UIColor grayColor];
[infoView addSubview:lblCell1];
imgCell1 = [[[UIImageView alloc]initWithFrame:CGRectMake((cell.frame.size.width)/3, cell.frame.size.width, 30, (cell.frame.size.height)/2)]autorelease];
[infoView addSubview:imgCell1];
lblCell2 = [[[UILabel alloc]initWithFrame:CGRectMake(((cell.frame.size.width)/3)+30, 0, cell.frame.size.width,(cell.frame.size.height)/2 )]autorelease];
lblCell2.backgroundColor = [UIColor lightGrayColor];
[infoView addSubview:lblCell2];
lblCell3 = [[[UILabel alloc]initWithFrame:CGRectMake((cell.frame.size.width)/3, (cell.frame.size.height)/2, cell.frame.size.width, (cell.frame.size.height)/2)]autorelease];
lblCell3.backgroundColor = [UIColor brownColor];
[infoView addSubview:lblCell3];

[cell.contentView addSubview:infoView];
//[cell.contentView addSubview:imgCell1];
//[cell.contentView addSubview:lblCell2];
//[cell.contentView addSubview:lblCell3];

Player *doc = [[Player alloc]init];
NSMutableArray* reversedArray = [[NSMutableArray alloc] initWithArray:[[[[NSArray alloc] initWithArray: _data] reverseObjectEnumerator] allObjects]];

doc = [reversedArray objectAtIndex:indexPath.row];
lblCell1.text = doc.name;
lblCell2.text = doc.email;
lblCell3.text = doc.phone;
imgCell1.image = backgroundImage;
[imgCell1 sizeToFit];
//  cell.imgCell1.image = [UIImage imageNamed:@"phone.png"];
return cell;

, но изображение не установлено в кадре UIImageView,где я ошибаюсь и что я делаю для показа изображения в середине таблицы в каждой ячейке.

1 Ответ

1 голос
/ 24 ноября 2010

cell.image здесь вам не поможет.

Прикрепите изображение к UIImageView, а затем добавьте объект UIImageView к contentView ячейки, как вы делаете для другойслучаев.И установите рамку для UIImageView как обычно.Вы должны увидеть желаемый результат.

Изменить следующим образом

Чтобы было яснее, если бы я был расплывчатым.Вы сказали:

UIImage *image = blah blah blah;
UIImageView *imageView = [[UIImageView alloc] init];
imageView.image = image;
imageView.frame = CGRectMake(blah,blah,blah,blah); // position it to the middle 

[[cell contentView] addSubview:imageView];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...