[英]How to extract values from bundle in Android
在通过Facebook_Android SDK发送请求时,我得到了一个包。 有人可以解释它是什么数据类型以及如何提取数据? 谢谢。
01-28 11:58:07.548: I/Values(16661): Bundle[{to[0]=100005099741441, to[1]=100005089509891, request=134129756751737}]
编辑在这里,[i]是一个字符串数组。 我能够做到。 但我不认为这是正确的方法。
for(int i=0;i< size-1;i++){
System.out.println(values.getString("to["+i+"]"));
}
其中size
是Bundle的大小,称为value
Bundle
基本上是一本字典。 Bundle中的每个值都存储在一个key
。 您必须知道密钥下的值类型。 当您知道类型时,可以通过调用与值类型相关的方法来访问与key
关联的值(同样,您必须知道类型)。
例如,如果key
是request
并且其类型是String
您将调用:
String value = bundle.getString("request");
如果类型很long
,你会打电话:
long value = bundle.getLong("request");
要遍历to
数组,前提是该值的类型为String
您可以这样做:
for (int i = 0; bundle.containsKey("to[" + i + "]"); i++) {
String toElement = bundle.getString("to[" + i + "]");
}
它不依赖于bundle对象的大小。
应在Facebook API for Android中提供捆绑中的所有密钥以及每个密钥的值类型。 如果您需要有关Bundle
对象的更多信息,请查看此处的参考资料 。
Bundle bundle = intent.getBundle();
bundle.getString("ITEM_NAME");
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.