【问题标题】:SignaturePadView in Xamarin Forms different on ios and androidXamarin Forms中的SignaturePadView在ios和android上有所不同
【发布时间】:2017-09-27 08:33:47
【问题描述】:

我已将 Xamarin.Controls.SignaturePad.Forms 的 Nuget 包添加到我的 xamarin 表单解决方案中。我调用 GetImageStreamAsync(SignatureImageFormat.Jpg);。当我使用白色背景和黑色笔触颜色运行它时,它仅适用于 ios。 Android 显示黑屏。然后,当我尝试将背景设置为黑白描边颜色时,Android 显示正确,而 ios 显示白色块且无法正确显示。有没有人对此有任何解决方案?理想情况下,在任一平台上具有相同的背景颜色和描边颜色会很好。我可以通过根据操作系统设置背景颜色和笔触颜色来解决它,但这似乎有点 hacky。当我调用 var str = await PadView.GetImageStreamAsync(SignatureImageFormat.Jpg); 时,这就是 Xamarin Forms 中的 android 的工作原理。设置“白色”背景不会出现在 Android 中。它总是显示一个黑色方块。有什么我想念的吗?我正在尝试来源https://github.com/xamarin/SignaturePad 谢谢。

 <forms:SignaturePadView x:Name="PadView"
                                       HeightRequest="100"
                                       WidthRequest="140"
                                       BackgroundColor="Black"
                                        SignatureLineColor="White" 
                                       PromptText="Sign here"
                                       PromptTextColor="Gray"
                                       ClearText="Clear"
                                       ClearTextColor="{StaticResource Accent}"
                                       StrokeColor="White"
                                       StrokeWidth="4" />

【问题讨论】:

  • 最终重建 SignaturePad 源并将图像背景设置为白色

标签: c# xamarin xamarin.forms signaturepad


【解决方案1】:

查看评论 - 当它创建签名的图像时,重建源代码并将白色硬编码为 android 背景颜色。它适合我必须做的,所以如果你想要另一种颜色可能不起作用,或者你可能必须在 android 和 ios 版本中硬编码你自己的颜色。没有深入研究 SignaturePad 代码以了解发生了什么。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-15
    • 2019-03-02
    • 1970-01-01
    • 2020-11-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多