我有一段使用UIGraphics方法的代码,似乎我使用的三个方法都被弃用了.
这是一段Xamarin.iOS代码,但我相信SWIFT用户也可以在这里提供帮助,有人能帮我解决这些问题的新方法吗?我正试图在谷歌上搜索这些方法,但我似乎没有得到任何直接的线索,表明这些方法的替代品是什么.
以下三种方法已被弃用;
UIGraphics.BeginImageContextWithOptions(size, false, ScreenDensity);
var image = UIGraphics.GetImageFromCurrentImageContext();
UIGraphics.EndImageContext();
完整的代码如下所示,但不确定这是否有帮助……
private UIImage CreateBufferImage()
{
if (paths is null || paths.Count == 0)
{
return null;
}
var size = Bounds.Size;
UIGraphics.BeginImageContextWithOptions(size, false, ScreenDensity);
var context = UIGraphics.GetCurrentContext();
context.SetLineCap(CGLineCap.Round);
context.SetLineJoin(CGLineJoin.Round);
foreach (var path in paths)
{
context.SetStrokeColor(path.Color.CGColor);
context.SetLineWidth(path.Width);
context.AddPath(path.Path.CGPath);
context.StrokePath();
path.IsDirty = false;
}
var image = UIGraphics.GetImageFromCurrentImageContext();
UIGraphics.EndImageContext();
return image;
}
谢谢