扫描二维码后如何打开新活动?

时间:2019-06-12 15:30:27

标签: android

您好,我目前正在使用QR码扫描仪。我想问问是否可以在扫描QR码后打开另一个活动,而不是将其显示为吐司?  以下是我的扫描仪文件代码

@Override

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);


    mtexthello=(TextView)findViewById(R.id.textview_hello);
    scanbtn=(Button)findViewById(R.id.btn1) ;
    final  Activity activity=this;

    scanbtn.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            IntentIntegrator l=new IntentIntegrator(activity);
            l.setDesiredBarcodeFormats(l.QR_CODE_TYPES);
            l.setPrompt("scan");
            l.setCameraId(0);
            l.setBeepEnabled(false);
            l.setBarcodeImageEnabled(false);
            l.initiateScan();

        }
    });
}

@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
    IntentResult res= IntentIntegrator.parseActivityResult(requestCode, resultCode,data);
    if(res!=null)
     if(res.getContents()==null)
     {
         Toast.makeText(this,"u cancelled scanning",Toast.LENGTH_LONG).show();

     }
     else
     {

         Intent intent = new Intent(MainActivity.this, LoginActivity.class);
         startActivity(intent);
        // Toast.makeText(this,res.getContents(),Toast.LENGTH_LONG).show();

     }




    super.onActivityResult(requestCode, resultCode, data);
    }
}

1 个答案:

答案 0 :(得分:0)

乍看之下,听起来好像是问题在于您试图开始下一个活动的方式,如果不是活动本身。

启动一个新应用,并使用一个简单的Button作为新活动的触发器。正确使用语法和要求后,请将您学到的知识应用于QR应用。

如果您能够从现有代码中显示Toast,则您的困难与QR码无关。

也许您真正需要的是查看这样的内容(Start an Activity with a parameter),然后在其中将参数传递给第二个活动。