使用复杂的字符串数组资源设置AlertDialog

时间:2013-10-13 11:58:53

标签: android android-alertdialog arrays

我有一个简单的警告对话框,如下图所示,使用简单的字符串数组(a)。我想替换,(a)使用更复杂的字符串数组(b),但是当对话框尝试解析视图时,我得到一个空指针异常。

这可能还是我做错了什么?

(a)

AlertDialog Code:

  final AlertDialog.Builder dialog = new AlertDialog.Builder(new ContextThemeWrapper(ctx,   R.style.mytheme));
  dialog.setTitle(title);
  dialog.setIcon(R.drawable.ic_launcher);
  dialog.setSingleChoiceItems(R.array.array_items, -1, itemSelectedListener);
  final AlertDialog alertDialog = dialog.create();

array_items.xml:

  <string-array name="array_items">
    <item>option a</item>
    <item>option b</item>
  </string-array>

(b)中

array_items_2.xml:

  <string-array name="array_items_2">
    <item>@array/array_items.xml</item>
    <item>@array/array_items.xml</item>
  </string-array>

第二个xml会导致AlertDialog因NullPointerException而崩溃。

我是否犯了错误,或者在没有自定义视图的情况下使用AlertDialog是不可能的?

1 个答案:

答案 0 :(得分:0)

好点,但不可能!为此你必须维护你的xml文件包含你想要的所有信息/关系作为静态数据和语法上你必须解析文件和提取信息。其他可能的方式是SQLite但我不建议你尝试因为如果你不打算进行CRUD操作,没有任何意义来维护表。