所以现在我用我的应用程序斑马线条形码扫描器。下面是示例代码(通用):

if(position == 0){
            Intent intent = new Intent("com.google.zxing.client.android.SCAN");
            intent.putExtra("SCAN_MODE", "QR_CODE_MODE");
            startActivityForResult(intent, 0);


        }

public void onActivityResult(int requestCode, int resultCode, Intent intent) {
        if (requestCode == 0) {
            if (resultCode == RESULT_OK) {
                contents = intent.getStringExtra("SCAN_RESULT");
                format = intent.getStringExtra("SCAN_RESULT_FORMAT");
                // Handle successful scan
                Intent i = new Intent(Main.this, BarcodeScanner.class);
                startActivity(i);
            } else if (resultCode == RESULT_CANCELED) {
                // Handle cancel
            }
        }
    }

所以启动BarcodeScanner.class的时候,我也想contents传递到它。我怎么会去这样做呢?

有帮助吗?

解决方案

使用捆绑内部意图以从一个活动到传递数据其他。在你的情况,你会做这样的事情 -

        Intent intent = new Intent(Main.this,BarcodeScanner.class);

        //load the intent with a key "content" and assign it's value to content            
        intent.putExtra("content",contents);

        //launch the BarcodeScanner activity and send the intent along with it
        //note that content  is passed in as well             
        startActivity(intent);

的信息被存储在一个“包”对象,该意图内生活 - 当调用意图对象的putExtras()方法

创建捆绑

其他提示

以同样的方式在调用"SCAN_MODE"前通过putExtra("some key", contents)其他活动,通过调用startActivity(),然后里面BarcodeScanner呼叫this.getIntent().getStringExtra("some key")

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top