Начало действия и задержка его перехода - PullRequest
1 голос
/ 01 декабря 2010

У меня есть 2 занятия:

Когда действие A начинает загрузку, приложение переходит в фазу загрузки. Когда она завершится, начинается действие B, поэтому у меня есть переход между представлениями A и B. Затем B также требуется фаза загрузки.

У меня есть загрузка - переход - загрузка - результат, который выглядит не очень хорошо.

Я хотел бы получить результат загрузки-перехода, в котором сгруппированы загрузки обеих операций.

Итак, мой вопрос: есть ли способ начать действие, но отложить переход?

Ответы [ 2 ]

5 голосов
/ 01 декабря 2010

Не думаю, что вы идете правильным путем. Я хотел бы предложить только один вид деятельности с загрузчиком. Затем используйте что-то вроде AsyncTask для загрузки данных в другой поток. Обновите пользовательский интерфейс по мере загрузки данных, а затем, когда все будет сделано, удалите загрузчик. Вы должны использовать несколько потоков для выполнения работы, которая требует времени, потому что в противном случае ваш пользовательский интерфейс зависнет. Глядя на то, что вы сказали выше, я не понимаю, зачем вам нужно два занятия.

0 голосов
/ 01 декабря 2010

Вы можете использовать ActivityGroup: http://developer.android.com/reference/android/app/ActivityGroup.html

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

Вы помещаете оба действия в группу действий, но вначале скрываете B (видимость = пропало). Затем вы можете поменять местами видимость / выполнить переход после загрузки данных и создания пользовательского интерфейса для B.

Мне любопытно, какой тип компоновки / пользовательского интерфейса у вас занимает столько времени, если данные уже были предварительно загружены в A.

...