多个扫描按钮Zxing

时间:2014-03-04 13:43:38

标签: java android zxing

我正在开发一个小型Android项目..我将Xzing条形码扫描仪链接起来,一切正常。现在我再次需要一个扫描按钮。但是当我用第二个按钮扫描时,它会将结果写在与第一个扫描按钮相同的字段中。有人帮我吗?

package de.example.addmeter;





@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    this.requestWindowFeature(Window.FEATURE_NO_TITLE);     //Fullscreen
        setContentView(R.layout.add_strom);

        }



        public void onClick1 (View view) {
            IntentIntegrator integrator = new IntentIntegrator(this);
            integrator.initiateScan();
        }

        public void onActivityResult(int requestCode, int resultCode, Intent intent) {
              IntentResult scanResult = IntentIntegrator.parseActivityResult(requestCode, resultCode, intent);
              if (scanResult != null) {

                  String meterid;   


              meterid = scanResult.getContents();



                EditText etmeterid = (EditText) findViewById(R.id.etmeterid);

                etmeterid.setText(meterid);
              }  
            }


        public void onClick2 (View view) {
            IntentIntegrator integrator = new IntentIntegrator(this);
            integrator.initiateScan();
        }
        public void onActivityResult1(int requestCode, int resultCode, Intent intent) {
              IntentResult scanResult = IntentIntegrator.parseActivityResult(requestCode, resultCode, intent);
              if (scanResult != null) {

                  String security;  


              security = scanResult.getContents();

              EditText etsecurity = (EditText) findViewById(R.id.etsecurity);

                etsecurity.setText(security);
              }  
            }

1 个答案:

答案 0 :(得分:1)

永远不会调用onActivityResult1函数。当Xzing意图返回时,您必须管理onActivityResult中的所有结果代码(顺便说一句,应该标记为@Override)。

通常情况下,你想要的东西应该用不同的requestCode来管理,但似乎Xzing的意图助手不允许它。

所以,在你的情况下,我会做一些事情,比如设置一个全局布尔变量wasCalledFromButton1,在相应的onClick方法中给它一个值,然后将返回的值赋给正确的EditText in onActivityResult根据此变量。