2014-03-04 58 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