2013-11-07 7 views
0

Я создал this topic несколько часов назад, и я решил свою главную проблему с помощью user @ J2K. Хотя, я думал, что прогресс-барабан хорошо работает .. но это не так.Android progressbar не показывает значение

Мой цикл заключается в следующем:

for(int i = list.size()-1; i >= 0; i--){ 

} 

И он сказал, чтобы изменить способ, которым я был выводим значение:

Изменение publishProgress ((я * 100)/list.size()) чтобы: publishProgress ((list.size() - я * 100)/list.size())

проблема заключается в том, что значение ProgressBar не меняется. Он всегда остается в 0. Так что я попытался проверить значения:

Log.e("Value:", String.valueOf((list.size() - i * 100)/list.size())); 

И я всегда получать: Значение: -99, и в конце цикла:

11-07 10: 25: 43,196: Е/Н Ошибка: (3187): java.lang.ArithmeticException: деление на ноль

Edit: решаемые.

Глядя на мой код другой темы, проблема в том, что я удалял из списка индекс..так я никогда не получу общий размер списка.

// Where total_list = amount of items in list 
int total__ = total_list - i; 
publishProgress((total__ * 100)/total_list); 

ответ

1

Ваш list является empty..thats почему list.size() Retuns zero..you которые выполняют операцию деления с zero.so это дает вам java.lang.ArithmeticException: divide by zero исключение попробуйте проверить список пуст или нет ..

+0

Но что не отвечаю, почему я не могу сказать, что мой прогресс достиг правильных значений. – user2902515

+0

.Поставьте еще какой-нибудь код вашей асинхронной программы, увидев эти строки, о которых мы не можем сказать. –

+0

Решенный, см. Мое редактирование. Благодарю. – user2902515

Смежные вопросы