Я использую изображение для отображения всего содержимого UITableViewCell, и оно устанавливается с помощью свойства backgroundView.
Моя проблема заключается в том, что оно всегда масштабируется по размеру ячейки.Есть ли способ отключить масштабирование в этом случае, поэтому я могу предоставить только версию с разрешением 480 пикселей, и она просто обрезается при портретной ориентации?
Я делаю это так:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
}
UIImageView *bgView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:[NSString stringWithFormat:@"menu.0%d.large.png", indexPath.row+1]]];
UIImageView *selectedBgView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:[NSString stringWithFormat:@"menu.0%d.large.selected.png", indexPath.row+1]]];
cell.backgroundView = bgView;
cell.selectedBackgroundView = selectedBgView;
[bgView release];
[selectedBgView release];
return cell;
}
Я пытался использовать две версии изображений для переключения между ними при изменении ориентации.Это тоже пока работает, но есть недостаток, что вы всегда видите масштабирование во время обработки анимации.
Спасибо за вашу помощь
Арне