Resources$NotFoundException в предварительном просмотре графического макета ADT (, но приложение действительно работает)

Моя проблема заключается в том, что загрузка массива строк, определенных в XML, работает в приложении, но приведет к ошибке в предварительном просмотре графического макета ADT.

Теперь из-за этой ошибки я не вижу графику в графическом макете, а с другой графикой работать сложно. Но представление загружается и отображает строки нормально, если я создаю и запускаю свое приложение.

Итак, я полагаю, что мой код правильный, но либо:

  • Мне не хватает некоторых ограничений предварительного просмотра графического макета и некоторых обходных путей
  • . или, возможно, я упускаю что-то очевидное и делаю что-то неправильно, даже если это работает в приложении

У меня есть собственное представление, в котором я получаю массив, определенный мной в файле array.xml.

public class ScoreTable extends View {
  [...]
  @Override
  protected void onDraw(Canvas canvas) {
    [...]
    int score_vals[] = getResources().getIntArray(R.array.score_vals);
    [...]
  }
  [...]
}

Мой массив определен в res/values/array.xml:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <array name="score_vals">
        <item >10</item>
        <item >20</item>
        <item >50</item>
    </array>
</resources>

Графический макет пуст и говорит:

Int array resource ID #0x7f050000
Exception details are logged in Window > Show View > Error Log

Но, конечно, у меня есть «общедоступный статический окончательный счет _vals = 0x7f050000;» в Р.яве!

Подробная информация об этой ошибке находится в стеке глубиной 50 -, но вернемся к этому:

android.content.res.Resources$NotFoundException: Int array resource ID #0x7f050000
    at android.content.res.Resources.getIntArray(Resources.java:405)
    at com.threecats.poker.ScoreTable.onDraw(ScoreTable.java:53)
    at android.view.View.draw(View.java:6740)
[...]

Итак, должны ли getResources ().getXXXArray ()работать в контексте предварительного просмотра графического макета ADT?

Я хотел бы упомянуть, что я пытался использовать как «массив», так и «массив -целое число» в XML, и оба работают в приложении, но не в предварительном просмотре. Также я попытался сохранить контекст из конструктора представления в частном члене контекста... тоже не помогло.

7
задан RumburaK 18 July 2012 в 14:35
поделиться