索引"字符串"在数组中总是返回-1,使用" Arrays.asList"

时间:2015-05-16 13:10:30

标签: java android

我正在尝试获取"字符串"的索引。从阵列中,我总是得到" -1"。案例如下:

String[] sDrawerOptions = getResources().getStringArray(R.array.DrawerOptions);
int pos = (Arrays.asList(R.array.DrawerOptions).indexOf(R.string.ta_notification));
//pos = -1 (always)

资源内容如下:

<string name="ta_notification">Notifications</string>
<string-array name="DrawerOptions">
    <item>@string/ta_notification</item>
</string-array>

你看到任何错误,帮助我理解。

1 个答案:

答案 0 :(得分:2)

R.string是int值而不是String。将其更改为

indexOf(getString(R.string.ta_notification)));

indexOf(getResources().getString(R.string.ta_notification)));

检索id引用的String。

同时更改

Arrays.asList(R.array.DrawerOptions)

Arrays.asList(sDrawerOptions)

感谢@pathfindereilte