Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ZXingBarcodeImageView(二维码)显示在iOS上,但不显示在Android上(Xamarin.Forms)_Xamarin_Xamarin.forms_F#_Xamarin.android_Qr Code - Fatal编程技术网

ZXingBarcodeImageView(二维码)显示在iOS上,但不显示在Android上(Xamarin.Forms)

ZXingBarcodeImageView(二维码)显示在iOS上,但不显示在Android上(Xamarin.Forms),xamarin,xamarin.forms,f#,xamarin.android,qr-code,Xamarin,Xamarin.forms,F#,Xamarin.android,Qr Code,这段代码用于在Xamarin.Forms应用程序中显示二维码,可在iOS中使用,但在Android上无法使用: let barCode = ZXingBarcodeImageView(HorizontalOptions = LayoutOptions.FillAndExpand, VerticalOptions = LayoutOptions.FillAndExpand,

这段代码用于在Xamarin.Forms应用程序中显示二维码,可在iOS中使用,但在Android上无法使用:

let barCode = ZXingBarcodeImageView(HorizontalOptions = LayoutOptions.FillAndExpand,
                                    VerticalOptions = LayoutOptions.FillAndExpand,
                                    BarcodeFormat = ZXing.BarcodeFormat.QR_CODE,
                                    BarcodeValue = foo)
barCode.BarcodeOptions.Width <- 500
barCode.BarcodeOptions.Height <- 500
mainLayout.Children.Add(barCode)
let barCode=ZXingBarcodeImageView(水平选项=LayoutOptions.FillAndExpand,
VerticalOptions=LayoutOptions.FillAndExpand,
条形码格式=ZXing.BarcodeFormat.QR_码,
条形码值=foo)

barCode.BarcodeOptions.Width幸运的是,我只需要在自己的Xamarin.Forms项目中使用
ZXing.Net.Mobile
。在那里,我设法用下一个C#代码显示iOS和Android的QRCode:

请注意,此库中有一个know,您必须明确设置WidthRequest和HeightRequest


附言:或多或少也讨论过同样的问题。

您是否初始化了Android库?这是一个在iOS和Android上运行的C#示例是的,我初始化了它,这里有完整的补丁@EvZ设置HeightRequest和WidthreQuest工作!!!很高兴能帮上忙,把它作为答案贴了出来。
ZXingBarcodeImageView GenerateQR(string codeValue)
{
    var qrCode = new ZXingBarcodeImageView
    {
        BarcodeFormat = BarcodeFormat.QR_CODE,
        BarcodeOptions = new QrCodeEncodingOptions
        {
            Height = 350,
            Width = 350
        },
        BarcodeValue = codeValue,
        VerticalOptions = LayoutOptions.CenterAndExpand,
        HorizontalOptions = LayoutOptions.CenterAndExpand
    };
    // Workaround for iOS
    qrCode.WidthRequest = 350;
    qrCode.HeightRequest = 350;
    return qrCode;
}