Саксофон в андроид
Я должен отображать название категории в Android TextView с элементами массива. Здесь общий размер категории составляет 5.
Я написал следующий код:
for (int i = 0; i < sitesList.getName().size(); i++) {
name[] = (TextView) findViewById(R.id.title);
name[].setText(sitesList.getCategory().get(i).toUpperCase());
Теперь я должен запустить приложение, что означает, что я получаю только последнее (5-е) имя категории. Но я хочу отобразить все (всего =5) категории.
for (int i = 0; i < sitesList.getName().size(); i++) {
name[i] = (TextView) findViewById(R.id.title);
name[i].setText(sitesList.getCategory().get(i).toUpperCase());
Теперь я должен запустить приложение означает, что мое приложение принудительно закрыто. Как я могу решить эту ошибку??? пожалуйста, дайте мне решение для этих???
Мое окно консоли показывает:
03-12 06:36:08.789: E/AndroidRuntime(886): Caused by: java.lang.NullPointerException
03-12 06:36:08.789: E/AndroidRuntime(886): at com.xmlparsing.MainActivity.onCreate(MainActivity.java:72)
03-12 06:36:08.789: E/AndroidRuntime(886): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
В моем коде 72-я строка это:
name[i] = (TextView) findViewById(R.id.title);
Но я должен создать текстовое представление программно, что означает, что он работал хорошо и хорошо отображал все (всего =5) категорий.
1 ответ
Это может быть не ответ, но это может помочь вам в правильном направлении или, по крайней мере, уточнить ваши намерения.
На основе NullPointerException
в стеке, и единственное, что может вызвать такое исключение в этой строке name[i]
Я собираюсь догадаться, что вы не создали name
свойство правильно.
TextView [] name = new TextView[5];
Даже несмотря на это, кажется, есть лучший способ сделать то, что вы пытаетесь достичь. В вашем коде вы пытаетесь получить доступ к одному и тому же тексту TextView и присвоить ему новое значение на каждой итерации цикла, так что тот же текст TextView всегда будет последним sitesList.getCategory().get(i)
значение.