2014-03-04 8 views
1

나는 작은 안드로이드 프로젝트에서 일하고있다. 나는 Xzing 바코드 스캐너를 연결했고 모든 것이 잘 작동했다. 이제 다시 스캔 버튼이 필요합니다. 하지만 두 번째 버튼으로 스캔하면 첫 번째 스캔 버튼과 동일한 필드에 결과가 표시됩니다. 누군가 나를 도울 수 있습니까?여러 스캔 버튼 Zxing

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를 설정 다음이 변수에 따라 onActivityResult 올바른 글고 치기에 반환 된 값을 제공, 해당 onClick 방법에에게 가치를주는 뭔가를 만들 것입니다.

관련 문제