我有一个困扰我的问题。我在strings.xml
中创建了一个名为bookmark_titles
的字符串数组。我想将它用于我的警报对话框并使用它们填充列表,但是我无法在R.array
中看到我的数组的名称,它只有那些内置在Android中的内容,例如PhoneTypes。我如何引用我的数组?
strings.xml
<string name="app_name">Dialogs</string>
<string name="action_settings">Settings</string>
<string-array name="bookmark_titles">
<item>Google</item>
<item>Bing</item>
<item>Gmail</item>
</string-array>
</resources>
FireMissilesDialogFragment
public class FireMissilesDialogFragment extends DialogFragment{
public Dialog onCreateDialog(Bundle savedInstanceState) {
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setTitle("Books are :");
.setItems(R.array., new DialogInterface.OnClickListener() { ---> can't see reference here
public void onClick(DialogInterface dialog, int which) {
// The 'which' argument contains the index position
// of the selected item
}
});
return builder.create();
}
答案 0 :(得分:1)
尝试“数组”:
<array name="bookmark_titles">
<item>Google</item>
<item>Bing</item>
</array>
答案 1 :(得分:0)
setItems()
的文档声明:
这应该是一个数组类型,即R.array.foo
使用array
代替string-array
:
<string name="bookmark_google">Google</string>
<string name="bookmark_bing">Bing</string>
<string name="bookmark_yahoo">Yahoo</string>
<array name="pref_values_sort_list">
<item>@string/bookmark_google</item>
<item>@string/bookmark_bing</item>
<item>@string/bookmark_yahoo</item>
</array>
答案 2 :(得分:0)
解决了这个问题。
我不得不删除import.android.R,之后,它工作了!谢谢你们