Robolectric TypedArray getString()返回null或空字符串

时间:2013-02-01 16:13:38

标签: android robolectric

我正在使用Robolectric来测试一个自定义视图膨胀的活动,但是当从TypedArray中获取值时,所有内容都返回null或空字符串。为了从类型化数组中获取正确的值,需要做些什么?

2 个答案:

答案 0 :(得分:2)

Robolectric没有重新实现整个Android标准库。

以下是TypeArray Shadow类的链接: https://github.com/pivotal/robolectric/blob/master/src/main/java/com/xtremelabs/robolectric/shadows/ShadowTypedArray.java

似乎缺少一些东西。您可以使用此函数来确认它确实缺少这些功能: http://pivotal.github.com/robolectric/javadoc/com/xtremelabs/robolectric/Robolectric.html#logMissingInvokedShadowMethods()

那说,有希望。最近发布了Robolectric 2.0 Alpha 1。虽然我还没有使用它,但它声称将需要更少的影子实现,因为它将直接使用Android实现。

答案 1 :(得分:0)

请尝试使用getStringArray()。例如:

String[] myStringArray = Robolectric.getShadowApplication().getResources()
    .getStringArray(R.array.MyStringArrayIdentifier)