问题:
我使用下面的代码来缩放图像,并使其适合单元内UITableviewCell的边界。这个代码是缩放图像,但它使图像颜色变暗意味着它不保持颜色组合。所以请提供任何更好的解决方案。< / p>
代码:
public static UIImage Scale(UIImage源,SizeF newSize) { UIGraphics.BeginImageContext(newSize); var context = UIGraphics.GetCurrentContext(); context.TranslateCTM(0,newSize.Height); context.ScaleCTM(1f,-1f);
context.DrawImage (new RectangleF (0, 0, newSize.Width, newSize.Height), source.CGImage);
var scaledImage = UIGraphics.GetImageFromCurrentImageContext();
UIGraphics.EndImageContext();
return scaledImage;
}
答案 0 :(得分:1)
如果您想要缩放UIImage
,请参阅this method。它工作正常。您应该将方法的结果缓存在文件系统中,以避免每个GetCell
上的图像缩放。
如果源图像与UIImageView
UITableViewCell
中的ContentMode
s相同或几乎相同,则设置UIImageView
属性的Mohib Sheth解决方案最佳。源图像的大小比UITableViewCell
中的{{1}}大得多,滚动速度会更低。
答案 1 :(得分:0)
在iOS here
中阅读有关UIView的ContentMode的所有内容根据您的要求,您需要将ContentMode属性设置为UIViewContentModeScaleAspectFit
我无法帮助您提供示例代码,因为您还没有提供有关如何创建代码的任何代码。填充TableView。