2012-03-29 3 views
0

** решаемых ** (см комментариев)Android - ProgressBar обновляется один раз, но не в два раза

Я обновляю ProgressBar (объявленные в макете XML на данном виде деятельности) через Service бегов и уведомление My Activity. Все работает нормально, в первую очередь, когда действие сначала вызвано. Затем действие завершается методом finish(), и приложение продолжает жить своим циклом.

В конце концов это действие вызывается снова для выполнения той же операции. Проблема в том, что ProgressBar не покажет никакого прогресса! Я сравнил валы ProgressBar с обоими экземплярами Activity, точно так же. На самом деле, я не понимаю. Любая помощь будет оценена по достоинству.


MyActivity

ProgressBar progressBar; 
public void onCreate(Bundle savedInstanceState) { 
    ... 
    progressBar = (ProgressBar) findViewById(R.id.progressBar1); 
    progressBar.setMax(100); 
    progressBar.setProgress(0); 
    ... 
} 

public void get_info_from_service(...) { 
    progressBar.setProgress(service.getPercent()); 
} 

void quit_activity{ 
    Intent myIntent = new Intent(getBaseContext(), OtherActivity.class); 
    MyActivity.this.finish(); 
    startActivity(myIntent); 
} 

MyService

for (Listener listener : listeners) { 
    listener.send_notification(this); 
} 

public int getPercent(){ 
    return this.percent; 
} 
+0

Вы получаете какое-либо исключение? Если да, то отправьте журнал ... – Prem

+0

Нет, к сожалению, я этого не делаю:/ – PeterGriffin

+0

Я отредактировал первое сообщение, но это вам не поможет. Мероприятие правильно уведомлено (следовательно, успешный первый экземпляр) - единственная возможная проблема в Службе будет плохим значением процента. – PeterGriffin

ответ

0

решаемая. Обязательно повторите попытку инициализации переменных перед вводом алгоритма!