【问题标题】:Xamarin ZXing Qr to ListXamarin ZXing Qr 列表
【发布时间】:2021-04-17 23:57:40
【问题描述】:

在我的项目中,我需要连续读取条形码并将它们放入列表中。但是当我尝试它时,它总是给我 NullReferenceException 但我没有得到它。当我在调试中检查它时,我可以看到它有一个字符串值,但是在尝试将它列出时它总是给我那个错误。这是我的扫描和获取数据代码:

 List<HoldMyString> mylist;  
 HoldMyString hold;
    private void ZXingScannerView_OnScanResult(ZXing.Result result)
    {
        Device.BeginInvokeOnMainThread(() =>
        {
            hold.HoldString = result.Text;  // HoldString is taking string value

            mylist.Add(hold);    
           

            
        });
    }

如何将我的数据连续地放入我的列表中。感谢您的帮助!

【问题讨论】:

  • 嗨@Uğurcan Uçar,你用HoldMyString 类型声明hold,但你没有初始化它。因此它是null。所以当你尝试访问它的属性时,你会得到NullReferenceException

标签: c# xamarin xamarin.forms xamarin.android xamarin.ios


【解决方案1】:

我能够重现与您相同的错误。

你可以使用下面的代码。

HoldMyString:

 public class HoldMyString
{
    public string HoldString { get; set; }
}

扫描并获取数据的代码:

  List<HoldMyString> mylist=new List<HoldMyString>();
    HoldMyString hold = new HoldMyString();
    private void Handle_OnScanResult(ZXing.Result result)
    {
        Device.BeginInvokeOnMainThread(() =>
        {
            hold.HoldString = result.Text;  // HoldString is taking string value

            mylist.Add(hold);
        });
    }

有关如何获取条形码的更多详细信息,您可以查看我之前完成的线程。 How to embed ZXing scanner in PageRenderer/Fragment/View into Xamarin.Forms ContentPage?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-26
    相关资源
    最近更新 更多