【问题标题】:Having issues with ZXing.Mobile for Xamarin c# ANDROIDXamarin c# ANDROID 的 ZXing.Mobile 存在问题
【发布时间】:2013-06-06 23:53:01
【问题描述】:

我拼命想让 ZXing.Mobile 在 Xamarin VS2012 C# 中工作,但我很难在网上找到任何东西来回答我的问题! :(

这是我的代码:

bnGetComp.Click += (sender, e) =>
{
    var scanner = new ZXing.Mobile.MobileBarcodeScanner(this);

    scanner.Scan().ContinueWith((t) =>
    {
        if (t.IsFaulted)
        {
            aTbCompName.Text = t.Exception.ToString();
        }
        else if (t.Result != null)
        {
            aTbCompName.Text = t.Result.Text;
        }
    });
};

我的手机启动扫描仪,然后扫描条形码,然后清空文本框,我什至尝试让它只用字符串值填充 aTbCompName.text,即“TEST”,它仍然清空它!我不明白它在做什么,我不能在它上面设置一个断点,因为这似乎并没有在 Xamarin 中做所有错误......

(手机是三星 Galaxy Note N7000,运行官方 JB 4.1.2)

谁能帮忙?

更新:

我一直在玩它,如果我之后旋转手机它确实有效,知道为什么在扫描条形码后旋转会完成该过程并将结果放入文本框中吗?

【问题讨论】:

  • 与重新加载 ViewState 有什么关系?如何调用 Viewstate 重新加载新数据? :S

标签: c# android zxing xamarin


【解决方案1】:

这可能有效也可能无效,但我的代码在 UI 线程上运行 UI 更新...请参阅下面的代码...

scanner.Scan().ContinueWith(t =>
RunOnUiThread(
    () =>
    {
        searchBar.Text = t.Result.Text;
        var intent = new Intent(this, typeof(SearchResultsActivity));
        intent.PutExtra("Description", searchBar.Text);
        StartActivity(intent);
    }));

【讨论】:

    猜你喜欢
    • 2015-12-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-11
    • 2019-03-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多