2014-02-11 6 views
0

Я не выполняю никаких сетевых операций, таких как загрузка изображений или носителей в моей ветке Ui. у меня очень сложный пользовательский интерфейс, который занимает около 8 секунд для загрузки, и черный экран входит между ними, есть ли способ, которым я могу его оптимизировать или показать какой-то индикатор выполнения, в то время как моя вторая активность загружает свой пользовательский интерфейс и устраняет прогресс, когда я закончил ,Получение черного экрана между действиями-Android

Я не могу использовать asynctask doInBackground(), поскольку все только для UI. - Для циклов для создания динамических дочерних элементов LinearLayout. Помещение представлений бок о бок на relativelayout и их переупорядочение в соответствии с бизнес-правилом. изменение различных цветов изображения в соответствии с бизнес-правилами и т. д.

Есть ли способ, который я могу оптимизировать и уменьшить время загрузки?

+0

Возможно, вам будет полезно опубликовать некоторый код, чтобы разработчики могли вам помочь. – Copernic

+0

В зависимости от вашего требования вы можете попробовать использовать некоторые макеты вместо использования LinearLayouts. Если вы можете разместить свой макет, мы можем помочь вам больше – virtualpathum

ответ

0

Зачем вам такая сложная компоновка в первую очередь? если макет слишком сложный, он НЕ должен быть. Попробуйте найти более простой макет, если вы должны следовать текущему макету, я предлагаю идею, но это не рекомендуется.

Вот эта идея, основанная на разработке iOS, вы должны сделать снимок полной компоновки (без какого-либо фактического содержимого, только макета) и отображать поверх своего макета при первой загрузке своей деятельности. После того, как вы уже загрузили свой нижний макет, вы удалите снимок сверху и сделайте реальный макет видимым (весь процесс должен показывать ход загрузки, чтобы пользователь не взаимодействовал с вашим пользовательским интерфейсом). Хотя это не идеально, оно должно помочь в вашем случае.

-1

Я только что изменил тему на прозрачный, и теперь я не получаю никакого черного экрана. но теперь я хочу показать неопределенный индикатор выполнения при переходе от первой активности к второй. но когда я делаю startActivity() в первом действии, индикатор progressbar останавливает анимацию.

Смежные вопросы