1

我看到了这段代码:

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    if (resultCode == RESULT_OK) {
        if (requestCode == 0) {
            bitmap = (Bitmap)data.getExtras().get("data");
            imageView.setImageBitmap(bitmap);
        }
    }
}

它得到了我的数据并且一切正常,但我不太明白为什么。bundleobject.getExtras().get(String key) 中的 key 参数应该是一些常量值之一还是取决于我?我尝试更改意图对象(数据)的名称,但它仍然有效。

感谢高级:)

4

2 回答 2

0

密钥来自创建捆绑包的人。看起来您正在从一个活动返回一个值,所以无论您从哪个活动返回,都会用“键”和“值”打包捆绑包。

所以他们的键不必是一个常数值,但它不是计算出来的,你必须明确地寻找它。该值可以是任何数据类型,并且您应该提前知道您期望的类型。

于 2013-06-24T13:33:55.003 回答
0

getExtras()类的公共方法也是如此Intent。它将返回一个Bundle对象。你可以用这个对象做任何事情。

于 2013-06-24T13:31:24.497 回答