2013-12-04 3 views
0

У меня есть диалоговое окно диалога, и в этом я хотел бы видеть все разрешения, необходимые для приложения. Название пакета приложения - восстановление с намерением. КодCrash ArrayIndexOutOfBoundsException on DialogFragment

К сожалению мое приложение падает, когда я открываю Диалог с помощью java.lang.ArrayIndexOutOfBoundsException: length = 3; index = 3 на permissions.append (requestPermissions [i] + "\ n"); Почему? Как я могу исправить?

ответ

2
permissions.append(requestedPermissions[i]+"\n"); 

Вышеуказанная строка должна присутствовать в вашей петле for. В настоящее время он присутствует после цикла for, поэтому значение i соответствует 3 (поскольку for завершается, когда i становится 3), давая ArrayIndexOutOfBoundsException.

Предположим, вы хотели бы добавить все разрешения на TextView следующим образом.

for (i = 0; i < requestedPermissions.length; i++) { 
    permissions.append(requestedPermissions[i]+"\n");    
} 
+1

Спасибо. Это решает мою проблему. –

0

вероятно вы хотите поместить Append внутри цикла FOOR

for (i = 0; i < requestedPermissions.length; i++) { 
permissions.append(requestedPermissions[i]+"\n");    
}