Это правда, многие приложения не следуют рекомендациям по правильной поддержке обеих ориентаций. К сожалению, я работал над многими подобными приложениями. Я всегда стараюсь по возможности изменить это мышление. (Хотя это хорошее решение для некоторых экранов!)
Следует ли мне сделать все мои экраны в моем приложении прокручиваемыми с помощью NestedScrollViews / ScrollViews (...)
Отвечая на ваш «главный вопрос», я рекомендую не делать этого, не задумываясь! Вам нужен более тонкий подход. Это не означает, что вам нужен другой подход для каждого экрана или что вам нужно вдвое больше дизайнов (по одному для каждой ориентации).
Вероятно, вы обнаружите, что экраны со списками не требуют так много изменений. И это, возможно, большая часть вашего приложения. Верно и то, что добавление контейнера для прокрутки, вероятно, решит большинство других экранов. Только не ожидайте простого исправления, которое вы сможете применить ко всем экранам.
Я также хотел бы отметить, что то, что вы только что обнаружили, повернув экран, на самом деле могло обнаружить, что ваш экран может быть разбит и в портретной ориентации . Только для телефонов меньшего размера, чем ваш, или, может быть, для пользователей, у которых есть большие шрифты, или сочетание этих факторов (и других). Или, может быть, пользователи с действительно большими телефонами (или маленькими шрифтами) могут иметь пробелы, которые намного больше, чем вы думаете, и / или вы не используете дополнительное пространство на этом устройстве.
В конце концов, большая часть работы здесь заключается в размышлениях о том, как разные виды должны изгибаться, когда пространство становится очень тесным или слишком разнесенным. Инструменты AS позволяют быстро изменять размер предварительного просмотра макета, чтобы вы могли быстро увидеть, как один и тот же макет будет выглядеть на узких, широких, высоких и коротких экранах. Убедитесь, что в этих условиях все выглядит разумно. Имея некоторый опыт, вы можете сделать это с помощью одного макета.
Если вы не читали это, это интересное чтение: https://developer.android.com/guide/practices/compatibility