Создание фоновой активности (Android) - PullRequest
0 голосов
/ 10 февраля 2019

У меня есть активность, выполняющая роль моего экрана загрузки, я хочу, чтобы он создавал новую активность и вызывал метод setControls () перед его настройкой.Это важно, потому что это позволит мне дать индикатор выполнения для завершения, пока базы данных создаются впервые.

Но как мне запустить объект класса, расширяющего AppCompatActivity, что позволяет мне взаимодействовать с ним,а затем передать его в текущую активность?

public void setData() {
    this.activity = new HomeScreen();
//        I know this is how I would start an activity normally,
//        but I can't reach the methods like this...
//        Intent activityIntent = new Intent(this, HomeScreen.class);
//        startActivity(activityIntent);
    loader = new GameLoader(this);
    gameExecutor = Executors.newSingleThreadExecutor();
    gameExecutor.submit(() -> {
        List<Future> gameSetup = activity.setControls();
        float tasks = gameSetup.size();
        int index = 0;
        float done = 0;
        while (!gameSetup.isEmpty()) {
            if (gameSetup.get(index).isDone()) {
                gameSetup.remove(index);
                --index;
                loader.drawOProgress(++done / tasks);
            }
            ++index;
        }

    });
}

1 Ответ

0 голосов
/ 10 февраля 2019

Как насчет создания асинхронной задачи, которая отображает индикатор выполнения при предварительном выполнении и скрывает индикатор выполнения при пост-выполнении.В фоновом режиме вы загружаете базы данных.

В вашей активности вызывается асинхронная задача

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...