Одно из моих приложений имеет свойство изображений в качестве фона Cells в UITableView, хотя во время тестирования все было в порядке, изображения и высота ячейки были точно такими же, как проверено в коде, но когда оно было загружено, я попытался загрузить егонесколько раз через iphone, ipad, ячейка растягивалась, и меры, применяемые во время тестирования, были совершенно другими, изображения вообще не ясны, приложения содержат изображения двух размеров (другой размер сетчатки @ 2x). Я не знаю, в чем дело или чтоотсутствует, я использую XCode 4.2, пожалуйста, совет,
Оцените ваши быстрые ответы, ну, его покупка в приложении содержит много альбомов, каждый из которых находится в ячейке представления с изображением, когдапосле загрузки изображение изменится, и uitableview автоматически обновится, в первую очередь изображения будут установлены в массиве (viewDidLoad)
'
UIImage *awwal = [UIImage imageNamed:@"album-01.png"];
UIImage *teni = [UIImage imageNamed:@"album-02.png"];
UIImage *telet = [UIImage imageNamed:@"album-03.png"];
UIImage *rabee = [UIImage imageNamed:@"album-04.png"];
UIImage *akhir = [UIImage imageNamed:@"album-05.png"];
UIImage *ba3do = [UIImage imageNamed:@"album-zaman.png"];
UIImage *aatiha = [UIImage imageNamed:@"album-tarab.png"];
UIImage *j3ala = [UIImage imageNamed:@"album-monawaa.png"];
NSMutableArray *images = [[NSMutableArray alloc] initWithObjects: awwal, teni, telet, rabee, akhir, ba3do, aatiha, j3ala, nil];
self.AlbumsImages = images;
[images release];'
, и именно там будет загружен tableView
-(UITableViewCell *) tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"CellIdentifier";
// NSLog(@"%@",AlbumsImages);
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier] autorelease];
}
NSUInteger row = [indexPath row];
NSArray *myPathList = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);
NSString *myPath = [myPathList objectAtIndex:0];
NSString* storagePath = [myPath stringByAppendingPathComponent:@"purchasedAlbums.plist"];
NSArray* valueList = [[NSArray alloc] initWithContentsOfFile:storagePath];
UIImage *change1 = [UIImage imageNamed:@"playalbum-06.png"];
UIImage *change2 = [UIImage imageNamed:@"playalbum-07.png"];
UIImage *change3 = [UIImage imageNamed:@"playalbum-08.png"];
UIImage *change4 = [UIImage imageNamed:@"playalbum-09.png"];
UIImage *change5 = [UIImage imageNamed:@"playalbum-11.png"];
UIImage *change6 = [UIImage imageNamed:@"playalbum-12.png"];
UIImage *change7 = [UIImage imageNamed:@"playalbum-10.png"];
UIImage *change8 = [UIImage imageNamed:@"playalbum-13.png"];
int i;
for (i = 0; i <= [AlbumsImages count]; i++) {
if ([[valueList objectAtIndex:i+1] intValue]) {
if (i == 0) {
[AlbumsImages replaceObjectAtIndex:0 withObject:change1];
}
if (i == 1) {
[AlbumsImages replaceObjectAtIndex:1 withObject:change2];
}
if (i == 2) {
[AlbumsImages replaceObjectAtIndex:2 withObject:change3];
}
if (i == 3) {
[AlbumsImages replaceObjectAtIndex:3 withObject:change4];
}
if (i == 4) {
[AlbumsImages replaceObjectAtIndex:4 withObject:change5];
}
if (i == 5) {
[AlbumsImages replaceObjectAtIndex:5 withObject:change6];
}
if (i == 6) {
[AlbumsImages replaceObjectAtIndex:6 withObject:change7];
}
if (i == 7) {
[AlbumsImages replaceObjectAtIndex:7 withObject:change8];
}
}
}
//cell.textLabel.text = [AlbumsView objectAtIndex:row];
cell.imageView.image = [AlbumsImages objectAtIndex:row];
cell.tag=row+1;
return cell;
}
, где change1,2,3 ..... - замененные изображения, когда альбомы сделаныwnloaded.