|
using System;
|
using System.Collections.Generic;
|
using System.Linq;
|
using System.Text;
|
|
using Android.App;
|
using Android.Content;
|
using Android.Content.PM;
|
using Android.OS;
|
using Android.Runtime;
|
using Android.Support.V7.App;
|
using Android.Views;
|
using Android.Widget;
|
using Com.Journeyapps.Barcodescanner;
|
|
namespace HDL_ON_Android
|
{
|
[Activity(Label = "CustomCaptureActivity", Theme = "@style/MyTheme1", ScreenOrientation = ScreenOrientation.Portrait)]
|
public class CustomCaptureActivity : AppCompatActivity//Activity
|
{
|
|
/**
|
* 条形码扫描管理器
|
*/
|
private CaptureManager mCaptureManager;
|
|
/**
|
* 条形码扫描视图
|
*/
|
private DecoratedBarcodeView mBarcodeView;
|
|
|
protected override void OnCreate(Bundle savedInstanceState)
|
{
|
base.OnCreate(savedInstanceState);
|
|
SetContentView(Resource.Layout.activity_zxing_layout);
|
mBarcodeView = (DecoratedBarcodeView)FindViewById(Resource.Id.zxing_barcode_scanner);
|
|
mCaptureManager = new CaptureManager(this, mBarcodeView);
|
mCaptureManager.InitializeFromIntent(this.Intent, savedInstanceState);//getIntent(),
|
mCaptureManager.Decode();
|
}
|
|
|
protected override void OnResume()
|
{
|
base.OnResume();
|
mCaptureManager.OnResume();
|
}
|
|
|
protected override void OnPause()
|
{
|
base.OnPause();
|
mCaptureManager.OnPause();
|
}
|
|
protected override void OnDestroy()
|
{
|
base.OnDestroy();
|
mCaptureManager.OnDestroy();
|
}
|
|
protected override void OnSaveInstanceState(Bundle outState)
|
{
|
base.OnSaveInstanceState(outState);
|
mCaptureManager.OnSaveInstanceState(outState);
|
}
|
|
|
/**
|
* 权限处理
|
*/
|
public override void OnRequestPermissionsResult(int requestCode, string[] permissions, [GeneratedEnum] Permission[] grantResults)
|
{
|
int[] rg = new int[grantResults.Length] ;
|
foreach(var g in grantResults)
|
{
|
rg.Append((int)g);
|
}
|
mCaptureManager.OnRequestPermissionsResult(requestCode, permissions, rg);
|
}
|
//public override void OnRequestPermissionsResult(int requestCode, String permissions[], int[] grantResults)
|
//{
|
// mCaptureManager.onRequestPermissionsResult(requestCode, permissions, grantResults);
|
//}
|
|
/**
|
* 按键处理
|
*/
|
public override bool OnKeyDown([GeneratedEnum] Keycode keyCode, KeyEvent e)
|
{
|
//return base.OnKeyDown(keyCode, e);
|
return mBarcodeView.OnKeyDown(keyCode, e) || base.OnKeyDown(keyCode, e);
|
}
|
//public boolean onKeyDown(int keyCode, KeyEvent event) {
|
// return mBarcodeView.onKeyDown(keyCode, event) || super.onKeyDown(keyCode, event);
|
//}
|
}
|
}
|