Предварительная загрузка всех изображений при запуске приложения - PullRequest
1 голос
/ 15 марта 2011

Я пытаюсь сделать простую игру Pairs для Android.

Структура программы

Menu.java (изначально загруженная активность меню)

Game.java (игровая активность, запускаемая с помощью меню)
GameThread.java (обрабатывает gameloop, обрабатывает рендеринг вызовов в GameView)
GameView.java (обрабатывает все рисунки на экране)

Graphics.java (хранит загруженные изображения)

Проблема

Проблема заключается в том, что загрузка всех растровых изображений, которые мне требуются для игровой активности, занимает до 2 секунд,поскольку есть много изображений, необходимых для анимации набора из 15 карт.Чтобы избежать большого времени загрузки между действиями Меню и Игры, я думал о предварительной загрузке всех растровых изображений, требуемых в классе Graphics, в новом потоке при первом запуске приложения (действие Меню) и отображении некоторой анимации загрузки..

Тогда, поскольку я не могу передать хранилище графики из действия «Меню» в действие «Игра», мне нужно сделать его статическим объектом в действии «Меню», чтобы получить к нему доступ из действия «Игра» (используя меню.графика...).Это ужасный способ сделать это?Я всегда думал, что использование статических объектов было плохой идеей?Какие еще есть варианты?

Заранее спасибо за помощь.

1 Ответ

0 голосов
/ 15 марта 2011

Я бы порекомендовал вам использовать AsncTask для этого. На главном сайте Android также есть статья под названием Painless Threading .

...