Коротка відповідь: Не робіть цього.
Переробіть додаток, щоб він міг працювати як у портретному, так і в пейзажному режимі. Не існує такого поняття, як інтерфейс користувача, який не може бути розроблений як для роботи в портреті, так і в пейзажі; тільки ледачі чи не уявні розробники.
Причина, чому досить проста. Ви хочете, щоб ваш додаток використовувався якомога ширшою аудиторією на якомога більше різних пристроях. Примушуючи певну орієнтацію екрана, ви не дозволяєте додатку працювати (зручно) на пристроях, які не підтримують цю орієнтацію, і ви засмучуєте та відчужуєте потенційних клієнтів, які віддають перевагу іншій орієнтації.
Приклад: Ви розробляєте свою програму для примусового портретного режиму. Клієнт завантажує додаток на пристрій 2 в 1, яким вони користуються переважно в ландшафтному режимі.
Наслідок 1: Ваш додаток непридатний, або ваш клієнт змушений відкручувати пристрій, обертати його та використовувати його в орієнтації, яка їм не знайома або зручна.
Наслідок 2: Замовник засмучується неінтуїтивним дизайном вашого додатка і знаходить альтернативу або повністю вириває додаток.
Я зараз з цим борюся з додатком, і як споживач і розробник, це ненавиджу. Настільки ж корисний, як і додаток, настільки ж фантастичні, як і ті функції, які він пропонує, я абсолютно ненавиджу цей додаток, тому що він змушує мене використовувати орієнтацію, протилежну всім іншим способам, яким я користуюся на своєму пристрої.
Ви не хочете, щоб ваші клієнти ненавиділи ваш додаток.
Я знаю, що це не відповідає безпосередньо на питання, тому я хочу пояснити це трохи детальніше для тих, хто цікавиться.
Існує тенденція в розробників бути дуже хорошими в написанні коду і по-справжньому жахливими в дизайні. Це питання хоч і звучить як кодове запитання, і запитуючий напевно відчуває, що це кодове запитання, це справді питання дизайну.
Питання справді таке: "Чи слід блокувати орієнтацію екрана в додатку?" Лист, що задав запитання, вирішив сконструювати інтерфейс користувача, щоб він працював і добре виглядав лише у портретному режимі. Я підозрюю, що це було заощадити час розробки або через те, що робочий процес програми особливо сприятливий для портретного макета (звичайного для мобільних ігор). Але ці причини нехтують усіма реальними важливими факторами, що мотивують правильний дизайн.
Захоплення клієнтів - ви хочете, щоб ваші клієнти відчували себе залученими до вашої програми, а не витісняли з неї. Додаток повинен плавно переходити з того, що робив ваш клієнт до відкриття програми. (З цієї причини більшість платформ мають послідовні принципи дизайну, тому більшість додатків виглядають більш-менш однаково, хоч і не потрібно.)
Відповідь клієнта - ви хочете, щоб ваші клієнти позитивно реагували на ваш додаток. Їм слід із задоволенням користуватися. Навіть якщо це програма для нарахування заробітної плати для роботи, їм буде приємно відкривати її та годинник. Додаток має заощадити вашим клієнтам час та зменшити розчарування через альтернативи. (Програми, які дратують користувачів, викликають обурення на ваш додаток, що переростає в обурення щодо вашого бренду.)
Конверсія клієнтів - ви хочете, щоб ваші клієнти могли швидко і легко переходити від перегляду до взаємодіючих. Це кінцева мета будь-якої програми - перетворити покази на прибуток. (Програми, які не приносять доходу, - це марна трата часу на створення, з точки зору бізнесу.)
Неправильно розроблений інтерфейс зменшує залучення клієнтів та реакцію, що в кінцевому рахунку призводить до зниження доходу. У світі, орієнтованому на мобільні пристрої (особливо на тему портретних / пейзажних режимів відображення), це пояснює, чому адаптивний веб-дизайн - така велика справа. У листопаді 2013 року компанія Walmart Canada представила чуйний дизайн на своєму веб-сайті та побачила 20% збільшення конверсії клієнтів. О'Нілл Одяг, реалізований чуйним веб-дизайном, а дохід від клієнтів, що користуються пристроями iOS, збільшився на 101,25% , а 591,42% - від клієнтів, що використовують пристрої Android .
Також існує тенденція, щоб розробники ретельно фокусувались на впровадженні конкретного рішення (наприклад, блокування орієнтації на дисплей), і більшість розробників на цьому веб-сайті будуть надто раді допомогти реалізувати це рішення, не ставлячи під сумнів, чи це навіть найкраще вирішення проблеми.
Блокування орієнтації екрана є еквівалентом дизайну інтерфейсу користувача, що реалізує цикл "час роботи". Ти справді? впевнені, що хочете зробити це саме так, чи є краща альтернатива?
Не змушуйте додаток переходити в єдиний режим відображення. Вкладіть додатковий час і зусилля, щоб зробити його чуйним.