2013-07-24 5 views
0

У меня есть проблема, которая прослушивает меня. Я создал строковый массив в 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(); 

    } 
+1

Вы попробовали очистить/перестроить? Не вижу причины, по которой он не будет отображаться как «R.array.bookmark_titles». –

+0

ссылайтесь на него так: 'R.array.bookmark_titles'. подробнее @ http://developer.android.com/guide/topics/ui/dialogs.html. Также проверьте это http://developer.android.com/guide/topics/resources/string-resource.html#StringArray. – Raghunandan

+0

@Joachim Isaksson да, я очистил проект, тот же выпуск – Dodi

ответ

1

попытка "массив":

<array name="bookmark_titles"> 
<item>Google</item> 
<item>Bing</item> 
</array> 
+0

не видит его – Dodi

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> 
+0

Я не думаю, что это проблема. http://developer.android.com/guide/topics/resources/string-resource.html#StringArray. Я просто попробовал это с помощью строкового массива для меня. – Raghunandan

0

решен вопрос.

Мне пришлось удалить import.android.R, после этого он сработал! Спасибо, ребята