SKGLView比SKCanvasView

时间:2017-09-14 22:19:11

标签: xamarin xamarin.forms skiasharp

我的应用程序主屏幕通过SKCanvasView呈现。颜色准确反映了我在代码中指定的值。

如果我交换SKGLView(硬件加速版),不更改其他代码,结果是60%更暗:

    <!--<skia:SKCanvasView PaintSurface="OnCanvasViewPaintSurface" />-->
    <skia:SKGLView PaintSurface="OnCanvasViewPaintSurface" />

为什么会发生这种情况,我该如何解决?

1 个答案:

答案 0 :(得分:2)

答案可以在这里找到:https://github.com/mono/SkiaSharp/issues/299#issuecomment-331990904

  

我找到了问题的解决方案。在启动屏幕样式中设置了一个特定属性,但在更改样式时不会(由于某种原因)未设置该属性。

     

splashscreen样式中,请注意:

<item name="android:backgroundDimEnabled">true</item>
     

文档:https://developer.xamarin.com/api/field/Android.Resource+Attribute.BackgroundDimEnabled

     

切换样式时不会取消设置。所以,要解决这个问题,只需将其设置为false:

<item name="android:backgroundDimEnabled">false</item>
     

以下是一个展示此内容的存储库:https://github.com/mattleibow/AndroidGLSurfaceViewTests