2010-04-09 106 views
1

我從股票表格單元格中收到了一些奇怪的行爲,或許並不奇怪,也許我正在做一些假設。UITableViewCellStyleDefault圖像大小

我創建的細胞如下:

cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease]; 

然後,我將圖像分配到默認ImageView的屬性。我的圖片通常來自用戶,因此可能會大於默認大小。要照顧這個我:

[cell.imageView setContentMode:UIViewContentModeScaleAspectFit]; 

我希望在控制範圍內爲我縮放圖像,但實際上,圖像都在地圖上。

那麼,有沒有一種合適的方法來限制庫存單元格中的圖像?

在此先感謝!

回答

2

我不存在這樣的問題,但現在用:

cell.imageView.image = [[userPics objectAtIndex:indexPath.row] imageScaledToSize:CGSizeMake(44.0,44.0)]; cell.imageView.contentMode = UIViewContentModeScaleAspectFit;

與類別方法:

+ (UIImage *)imageWithImage:(UIImage *)image scaledToSize:(CGSize)newSize { 
    UIGraphicsBeginImageContext(newSize); 
    [image drawInRect:CGRectMake(0, 0, newSize.width, newSize.height)]; 
    UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();   
    UIGraphicsEndImageContext(); 

    return [newImage retain]; 
} 
- (UIImage *)imageScaledToSize:(CGSize)newSize { 
    return [UIImage imageWithImage:self scaledToSize:newSize]; 
} 

是的,保留看起來可疑。