2014-03-04 154 views
1

我工作的一个小的Android项目..我有联系的Xzing条形码扫描器和一切工作。现在我需要再次扫描按钮。但是,当我与第二个按钮扫描,它写信给我,结果在同一领域作为第一scann-button.can有人能帮助我吗?多个扫描按钮斑马线

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

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

通常情况下,你想要什么应该蒙山不同requestCode进行管理,但目前看来,Xzing意图帮手不允许这样做。

所以,你的情况,我会做类似设置一个全局布尔变量wasCalledFromButton1,给它一个值对应onClick法,然后根据这个变量赋予返回值,以正确的EditText在onActivityResult