我有一个qr代码扫描器,然后我有一个If else语句,我想在if语句为true时显示Webview,但Web视图仍然显示并阻止相机视图。我该怎么做?如何在Android中显示WebView
PreviewCallback previewCb = new PreviewCallback() {
public void onPreviewFrame(byte[] data, Camera camera) {
Camera.Parameters parameters = camera.getParameters();
Size size = parameters.getPreviewSize();
Image barcode = new Image(size.width, size.height, "Y800");
barcode.setData(data);
int result = scanner.scanImage(barcode);
if (result != 0) {
previewing = false;
mCamera.setPreviewCallback(null);
mCamera.stopPreview();
SymbolSet syms = scanner.getResults();
WebView engine = (WebView) findViewById(R.id.web_engine);
engine.removeAllViews();
for (Symbol sym : syms) {
String value = new String( sym.getData());
if(value.startsWith("http://192.168.74.1")){
scanText.setText("QR Code result: " + value);
barcodeScanned = true;
engine.setVisibility(View.VISIBLE);
engine.loadUrl(value);
}
else {
scanText.setText("QR Code result 2: " + value);
barcodeScanned = true;
engine.setVisibility(View.GONE);
}
TextView tv = (TextView) findViewById(R.id.scanText);
tv.setMovementMethod(LinkMovementMethod.getInstance());
}
}
}
};
第一:请不要做循环。其次:如果您希望WebView不再在'else'语句中显示,只需通过'engine.setVisibility(View.GONE)'将其禁用即可。 – kiruwka