2014-06-23 28 views
2

我目前正試圖讓ZXing庫掃描一些條碼。目前通過意向工作正常掃描多個條碼而不會丟失相機屏幕

現在我想讓它一次解碼多個條形碼,而不必單獨掃描每個條形碼。

任何示例將不勝感激。這是我目前的代碼的樣子。

MainActivity:

public class MainActivity extends Activity implements OnClickListener { 

public int SCANNER_REQUEST_CODE = 123; 

TextView tvScanResults; 
Button btnScan; 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    initViews(); 
} 

private void initViews() { 
    tvScanResults = (TextView) findViewById(R.id.tvResults); 
    btnScan = (Button) findViewById(R.id.btnScan); 
    btnScan.setOnClickListener(this); 
} 

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    // Inflate the menu; this adds items to the action bar if it is present. 
    getMenuInflater().inflate(R.menu.main, menu); 
    return true; 
} 

@Override 
public void onActivityResult(int requestCode, int resultCode, Intent intent) { 

    if (requestCode == SCANNER_REQUEST_CODE) { 
     // Handle scan intent 
     if (resultCode == Activity.RESULT_OK) { 
      // Handle successful scan 
      String contents = intent.getStringExtra("SCAN_RESULT"); 
      String formatName = intent.getStringExtra("SCAN_RESULT_FORMAT"); 
      byte[] rawBytes = intent.getByteArrayExtra("SCAN_RESULT_BYTES"); 
      int intentOrientation = intent.getIntExtra("SCAN_RESULT_ORIENTATION", Integer.MIN_VALUE); 
      Integer orientation = (intentOrientation == Integer.MIN_VALUE) ? null : intentOrientation; 
      String errorCorrectionLevel = intent.getStringExtra("SCAN_RESULT_ERROR_CORRECTION_LEVEL"); 

      tvScanResults.setText(contents + "\n\n" + formatName); 

     } else if (resultCode == Activity.RESULT_CANCELED) { 
      // Handle cancel 
     } 
    } else { 
     // Handle other intents 
    } 

} 

@Override 
public void onClick(View v) { 
    if (v.getId() == R.id.btnScan) { 
     // go to fullscreen scan 
     Intent intent = new Intent("com.google.zxing.client.android.SCAN"); 
     intent.putExtra("SCAN_MODE", "SCAN_MODE"); 
     startActivityForResult(intent, SCANNER_REQUEST_CODE); 
    } 
} 

} 
+0

這個成功嗎? – Killesk

+0

@Killesk Nop。還沒有。 –

回答

相關問題