有人知道如何在 SkiaSharp.Views.UWP 命名空间中使用 SKXamlCanvas 吗?
我找到了关于 SkiaSharp.Views.Forms 和 SKCanvasView 的信息。
在官方网站我们有 https://developer.xamarin.com/api/namespace/SkiaSharp.Views.UWP/
但是nuget对UWP一无所知。Nuget 只为表单提供包。
有人知道如何在 SkiaSharp.Views.UWP 命名空间中使用 SKXamlCanvas 吗?
我找到了关于 SkiaSharp.Views.Forms 和 SKCanvasView 的信息。
在官方网站我们有 https://developer.xamarin.com/api/namespace/SkiaSharp.Views.UWP/
但是nuget对UWP一无所知。Nuget 只为表单提供包。
查看GitHub 上 SkiaSharp 存储库中的UWP 示例。
他们正在使用Canvas
这样的:
<Page
x:Class="SkiaSharpSample.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:SkiaSharpSample"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:skia="using:SkiaSharp.Views.UWP"
mc:Ignorable="d">
<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
<skia:SKXamlCanvas PaintSurface="OnPaintSurface" />
</Grid>
</Page>
这里重要的是SkiaSharp.Views.UWP
使用xmlns
属性导入命名空间,以便您可以在 XAML 中使用它。
SkiaSharp.Views
将NuGet 包安装到 UWP 项目后,命名空间本身应该可用。请注意,您SKXamlCanvas
只能从 UWP 项目访问,而不是从共享类库。
如果您使用 SkiaSharp.Forms,情况会有所不同。你不SKXamlCanvas
直接使用。相反,该库SkiaSharp.Views.Forms.SKCanvasView
在共享库中使用,然后使用 Xamarin.Forms 自定义渲染器SKXamlCanvas
在 UWP 上呈现此视图(请参阅此处的源代码)。基本上你不应该SKXamlCanvas
直接使用SKCanvasView
而是使用。