发送Zxing scanResult到另一个活动
我试过了一切,无论我能解决这个问题。最后,我在这里发布它来获得解决方案(Android的新功能)。发送Zxing scanResult到另一个活动
我制作了一个android扫描器应用程序,我正在使用ZXing开源代码。问题是扫描后我试图将扫描结果发送到另一个活动,但无法完成。
这里是我的代码:
public class MainActivity extends AppCompatActivity
implements ZXingScannerView.ResultHandler, NavigationView.OnNavigationItemSelectedListener {
private ZXingScannerView mScannerView;
private int CALL_SCANNER_APP;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
// Scan Button code
public void onClick(View v) {
ZXingScannerView mScannerView = new ZXingScannerView(this);
setContentView(mScannerView);
mScannerView.setResultHandler(this);
mScannerView.startCamera();
//startActivityForResult(mScannerView1, CALL_SCANNER_APP);
}
@Override
protected void onPause(){
super.onPause();
mScannerView.stopCamera();
}
@Override
public void handleResult(Result result) {
ResultActivity.tvresult.setText(result.getText());
/*Log.w("handleReuslt", result.getText());
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("Scan Result");
builder.setMessage(result.getText());
AlertDialog alertDialog = builder.create();
//alertDialog.show();
builder.setPositiveButton("Result", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Intent intent = new Intent(MainActivity.this, MainActivity.class);
startActivity(intent);
}
});
builder.setNegativeButton("OK", null).show();*/
//Resume Scanning
//mScannerView.resumeCameraPreview(this);
}
还有就是一个方法,发送结果从一个活动到另一个活动是scanActivityForResult()
但对我来说,我不使用上public void onClick(View v)
意图那么我该怎么办做到这一点。
谢谢!
使用下面的代码进入按钮点击。
Intent intent = new Intent(SelectOptionActivity.this, CaptureActivity.class);
intent.putExtra("SCAN_MODE", "ONE_D_MODE");
intent.putExtra("SCAN_FORMATS", "CODE_39,CODE_93,CODE_128,DATA_MATRIX,ITF,CODABAR,EAN_13,EAN_8,UPC_A,QR_CODE");
intent.setAction(Intents.Scan.ACTION);
startActivityForResult(intent, 1);
并重写此方法以获得扫描结果。
public void onActivityResult(int requestCode, int resultCode, Intent intent) {
if (requestCode == 1 && resultCode == RESULT_OK) {
final String contents = intent.getStringExtra(Intents.Scan.RESULT);
final String formatName = intent.getStringExtra(Intents.Scan.RESULT_FORMAT);
}
}
没有得到(SelectOptionActivity.this,CaptureActivity.class);还intent.setAction(Intents.Scan.ACTION); – rbashish
Intent intent = new Intent(“your activity.this”,CaptureActivity.class); –
你在做什么? – Piyush
不幸的是,应用程序已关闭!我很困惑。我可以将puclic void onClick()转换为意图吗? – rbashish