День 4-й

Дата публикації: 09.07.2018 Переглядів:

Зіткнувся із цікавою проблемою. Мені ця проблема дійсно здається цікавою, тому що це особливість роботи верхнього та нижнього бару на Android-і. Зараз говоритиму максимально простими та зрозумілими словами, тому якщо мене раптом читають програмісти, не серчайте, якщо я образив професійну термінологію.

Ну так, власне, в чому ж проблема? Програма має два етапи, які вона проходить, перш ніж з'явитися на екрані. Перший етап, це формування вікна, ми ще не бачимо, але процес завантаження програми вже розпочато. Це можна чітко спостерігати, якщо запускати «важку» програму і відкрити диспетчер завдань на комп'ютері. Наводжу приклад саме для комп'ютера, бо так легко пояснити. Ну так ось, ви запустили програму, у диспетчері завдань ви її вже бачите, програма вже починає використовувати потужності вашого комп'ютера, але при цьому на екрані поки що пусто. Другий етап, це якраз поява вікна програми на екрані.

І на першому етапі, і на другому етапі в програмі можна прописати ті чи інші дії, наприклад, завантаження файлів, зміна кольору та взагалі в принципі все що завгодно. Через те, як багато процесів зазначено у програмі на цих двох етапах найчастіше залежить швидкість її завантаження.

На комп'ютері все просто. Якщо в налаштуваннях стоїть, що програма повинна працювати на весь екран, то під час її відображення на екрані, на другому етапі вона розтягується на весь екран і все.

На Android все трохи інакше. Навіть якщо у вас в налаштуваннях стоїть, що програма запускатиметься на весь екран, верхній і нижній бар все одно з'являються поверх вашої програми, і через пів секунди зникають, красиво спливаючи за екран. Але так як це вже відбувається після того, як програма з'явилася після другого етапу, програма все одно розтягується не на весь екран, вона все ще думає, що верхній і нижній бар є на постійній основі.

Я знайшов вирішення цієї проблеми, може бути не найелегантніше, але воно працює. Я додав таймер, який відраховує кілька секунд, після чого запускає повторне масштабування програми, і ось після цього програма вже займає весь простір екрану..

*усі скріншоти занадто старі і перекладатися не будуть.

День 4-й

Поділитися:

Посилання скопійоване