Первое действие моего приложения - проверка базы данных и ее обновление при необходимости.Android setContentView и вычисления
@Override
public void onCreate(Bundle savedInstanceState) {
setTheme(getThemeFromPreferences(this));
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_first);
}
@Override
public void onResume() {
super.onResume();
//Test et remplissage de la BDD
ProgressBar progressBar = (ProgressBar) findViewById(R.id.firstProgressBar);
DatabaseFeeder.testAndFeed(this, progressBar);
//Launch welcoming activity
Intent i = new Intent(this, AccueilActivity.class);
startActivity(i);
}
Статический метод DatabaseFeeder.testAndFeed немного медленно, потому что он читает из активов, так что это может занять как 5 секунд, чтобы заполнить базу данных.
Проблема в том, что ContentView не установлен до фидера! Моя активность пуста в течение 5 секунд, а затем появляется как просмотр содержимого, включая полностью заполненный индикатор прогресса.
Почему это так?
Попытайтесь получить доступ к промежуточному бару внутри себя, а не в onResume. Просто отпустите его внутри. –
Уже пробовал и не работает, также попробовал onStart(). Нет увольнения, это не прогрессDialog. –