2013-11-27 49 views
0

我有一個標準的UITableViewCell(不是自定義),我試圖使用它的cell.imageview屬性。我傳入尺寸爲44x44像素的圖像,我試圖縮小UIImageView和UIImage。我得到的結果是像素化的較小圖像。爲什麼會發生?UITableViewCell ImageView變得像素化

此外,有沒有辦法使UITableViewCell內的UIImageView更小?目前它正在覆蓋分隔線。

CGSize itemSize = CGSizeMake(20, 20); 
UIGraphicsBeginImageContext(itemSize); 
CGRect imageRect = CGRectMake(0.0, 0.0, itemSize.width, itemSize.height); 
[cell.imageView.image drawInRect:imageRect]; 
cell.imageView.image = UIGraphicsGetImageFromCurrentImageContext(); 
UIGraphicsEndImageContext(); 

enter image description here

+0

僅在視網膜上模糊嗎? – JamesSugrue

+0

@KiwiBastard我只在視網膜上試過它 – Apollo

+0

很確定iOS會從20x20放大到40x40視網膜,這就是爲什麼它很模糊。你可以提供圖像作爲PNG而不是代碼?例如,將實際的PNG大小調整爲20x20和40x40 @ 2x。 – JamesSugrue

回答

1

爲Retina顯示屏提供正確的兩倍大小的圖像,如果圖像是44X44非視網膜,在88x88提供@ 2X圖像。

分離器:我假設你使用故事板:選擇故事板中的tableview。在屬性檢查器中爲分隔符插入(第3塊)選擇「自定義」,並將左右值設置爲0.現在您的分隔符不會被切割:-)

+0

儘管OP正試圖讓他們以20x20的速度顯示,但圖像應該是40x40。 + 1用於分隔線的故事板調整 - 這是蘋果希望它們看起來的方式,但您現在可以從「IB」的左右端進行調整。 – siburb