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>

ファイアミサイルダイアログフラグメント

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();

    }
4

3 に答える 3

1

次の状態のドキュメント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>
于 2013-07-24T11:21:12.700 に答える
1

「配列」を試してください:

<array name="bookmark_titles">
<item>Google</item>
<item>Bing</item>
</array>
于 2013-07-24T11:12:51.760 に答える