• Xamarin.Forms扫描二维码


    仅限Android端

    Xamarin.Forms v5.0.0.2012

    1、安装包:

      ZXing.Net.Mobile.Forms v2.4.1

      Ideine.ZXing.Net.Mobile v2.4.2

      

    2、Android项目

      MainActivity.cs添加如下代码:

      MobileBarcodeScanner.Initialize(Application);

        public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
        {
            protected override void OnCreate(Bundle savedInstanceState)
            {
                TabLayoutResource = Resource.Layout.Tabbar;
                ToolbarResource = Resource.Layout.Toolbar;
    
                base.OnCreate(savedInstanceState);
    
                Xamarin.Essentials.Platform.Init(this, savedInstanceState);
                global::Xamarin.Forms.Forms.Init(this, savedInstanceState);
    
                MobileBarcodeScanner.Initialize(Application);
    
                LoadApplication(new App());
            }
            public override void OnRequestPermissionsResult(int requestCode, string[] permissions, [GeneratedEnum] Android.Content.PM.Permission[] grantResults)
            {
                Xamarin.Essentials.Platform.OnRequestPermissionsResult(requestCode, permissions, grantResults);
    
                base.OnRequestPermissionsResult(requestCode, permissions, grantResults);
            }
        }

      AssemblyInfo.cs文件添加如下代码:

      [assembly: UsesPermission(Android.Manifest.Permission.Camera)] //相机
      [assembly: UsesPermission(Android.Manifest.Permission.Flashlight)] //闪光灯  

      

    3、页面代码:

        <ContentPage.Content>
            <StackLayout>
                <Button x:Name="photo"
                        Text="Photo"
                        Clicked="photo_Clicked"/>
                <Button x:Name="video"
                        Text="Video"
                        Clicked="video_Clicked"/>
                <Button x:Name="scan"
                        Text="Scan"
                        Clicked="scan_Clicked"/>
    
                <Label x:Name="lab" Text="扫描文本"/>
    
    
            </StackLayout>
        </ContentPage.Content>

    4、后台代码:

            private async void scan_Clicked(object sender, EventArgs e)
            {
                var scanner = new MobileBarcodeScanner();
                var result = await scanner.Scan();
                if (null != result)
                {
                    lab.Text = result.Text;
                }
            }

  • 相关阅读:
    eNSP进行配置网络模拟网络联通
    Labview上使用mydaq采集数据
    Labview实现计算器
    matlab小记(四)
    matlab小记(三)
    matlab小记(二)
    matlab小记(一)
    Python中map和reduce
    Python 如何调用自定义函数
    《机电传动控制》第十一周作业(二)
  • 原文地址:https://www.cnblogs.com/kwoon/p/14505350.html
Copyright © 2020-2023  润新知