我只是在玩 Xamarin Forms 和 SkiaSharp。我用 SkiaCanvas 创建了一个简单的 Xamarin 表单 ContentView。我的PaintSurface如下画一个简单的绿色圆圈:
private void canvas_PaintSurface(object sender, SKPaintSurfaceEventArgs e)
{
var view = (SKCanvasView)sender;
var canvas = e.Surface.Canvas;
using(var paint = new SKPaint())
{
paint.Color = Colours.XamarinGreen;
paint.Style = SKPaintStyle.Fill;
paint.StrokeWidth = 1;
paint.IsAntialias = true;
canvas.DrawCircle((float)view.Width / 2.0f, (float)view.Height / 2.0f, (float)view.Height / 2.0f, paint);
}
}
在我的测试应用程序中,当我通过拖动窗口的角来调整窗口大小时,圆圈会闪烁。我想知道在 Xamarin.Forms 应用程序中使用 SkiaSharp 绘制图形时是否有一种简单的方法来启用双缓冲?