Я делаю круговой неопределенный progressBar видимым, а затем запускаю Thread, что может занять несколько секунд (я попробовал AsyncTask, но он не сработал, возможно, потому, что внутри метода запущен другой AsyncTask). Тем не менее, progressBar становится видимым только после завершения потока. Как сделать его видимым перед запуском потока, чтобы пользователь мог видеть, что что-то происходит?
Редактировать: код довольно сложный, поэтому невозможно прикрепить все это без длинного описания, однако Я постараюсь прикрепить важные части кода
//this is the Thread class
private static final class LoadingMolecules extends Thread{
private Intent intent;
private ArrayList<Integer> groups;
Context context;
QuizProvider quizProvider;
public LoadingMolecules (Intent intent,ArrayList<Integer> groups, Context context ){
this.intent = intent;
this.groups = groups;
this.context = context;
}
@Override
public void run() {
quizProvider = new QuizProvider(groups, context);
//inside next method is the asyncTask
quizProvider.loadAllCompounds();
}
}
//there is the code running
progressBar.setVisibility(View.VISIBLE);
LoadingMolecules lm = new LoadingMolecules(intent, groups, this);
lm.start();
try {
lm.join();
}catch (InterruptedException ignore){
}
intent.putExtra("quizProvider", lm.quizProvider);
startActivity(intent);
finish();