Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/209.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 安卓Zxing相机在反按时不工作_Android_Qr Code_Zxing - Fatal编程技术网

Android 安卓Zxing相机在反按时不工作

Android 安卓Zxing相机在反按时不工作,android,qr-code,zxing,Android,Qr Code,Zxing,我的ZXing二维码扫描仪有问题。问题是当我在网页或新活动中按下后退按钮时,扫描仪将停止工作,无法扫描任何内容。谁能告诉我我的错误在哪里x 提前谢谢 import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.View; import android.widget.Button; import android.widget.Toast; import android.

我的ZXing二维码扫描仪有问题。问题是当我在网页或新活动中按下后退按钮时,扫描仪将停止工作,无法扫描任何内容。谁能告诉我我的错误在哪里x 提前谢谢

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
import android.util.Patterns;
import android.content.Intent;
import com.google.zxing.Result;
import android.net.Uri;

import me.dm7.barcodescanner.zxing.ZXingScannerView;

public class ScannerActivity extends AppCompatActivity implements ZXingScannerView.ResultHandler {
    private ZXingScannerView zXingScannerView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_scanner);
    }

    public void scan(View view) {
        zXingScannerView = new ZXingScannerView(getApplicationContext());
        setContentView(zXingScannerView);
        zXingScannerView.setResultHandler(this);
        zXingScannerView.startCamera();
    }

    public void onPause() {
        super.onPause();
        zXingScannerView.stopCamera();
    }

    @Override
    public void handleResult(Result result) {
        Toast.makeText(getApplicationContext(), result.getText(), Toast.LENGTH_SHORT).show();
        zXingScannerView.resumeCameraPreview(this);

        if(Patterns.WEB_URL.matcher(result.getText()).matches()) {
            // Open URL
            Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(result.getText()));
            startActivity(browserIntent);
        }
        if(result.getText().equals("Welcome to Booth A")) {
            // Open nextActivity
            Intent Quiz1 = new Intent(this, QuizActivity.class);
            startActivity(Quiz1);
        }

    }

您需要覆盖
scanneActivity
中的
onBackPressed
方法。你可以这样做

@Override
public void onBackPressed() {
    //do something
}

默认方法调用销毁当前片段或活动。通过
onPause
,通过执行
zXingScannerView.stopCamera()停止相机

您需要覆盖
scanneActivity
中的
onBackPressed
方法。你可以这样做

@Override
public void onBackPressed() {
    //do something
}

默认方法调用销毁当前片段或活动。通过
onPause
,通过执行
zXingScannerView.stopCamera()停止相机

谢谢,我解决了这个问题。你能分享你的代码吗?你能解决这个问题吗。。因为我的问题是当我使用backpress应用程序时刚好完全关闭谢谢@Tan KahsengThanks,我解决了这个问题你能分享你解决它的代码吗。。因为我的问题是当我使用backpress应用程序时,刚好完全关闭谢谢@Tan Kahseng