通过surfaceview使用zxing条形码阅读器
我正在创建一个条码扫描器应用程序,我想使用Zxing读取条形码,我的应用程序有一个surfaceview并显示相机,但现在我想从我的SurfaceView相机扫描条形码,我使用它的原因,是我在我的布局中的表面视图下有两个Edittexts来显示条形码的内容。
我应该如何创建一个类似的应用程序,主要的问题是如何将zxing设置为表面。
如果有任何我会欣赏的方式。
布局截图:
使用以下代码自定义您的zxing布局。
我带了一个RelativeLayout
对于zxing Scanner的RelativeLayout
。
或者, 使用此引用:
我的设计看起来像下面的图像,如果需要你可以采取FrameLayout
。
Xml代码:
活动代码:(Java)
public class TakeSingleScanActivity extends AppCompatActivity implements ZXingScannerView.ResultHandler { private ZXingScannerView mScannerView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_take_single_scan); //Scanner mScannerView = new ZXingScannerView(this); RelativeLayout rl = (RelativeLayout) findViewById(R.id.relative_scan_take_single); rl.addView(mScannerView); mScannerView.setResultHandler(this); mScannerView.startCamera(); mScannerView.setSoundEffectsEnabled(true); mScannerView.setAutoFocus(true); }