Я не думаю, что зашел бы настолько далеко, что сказал бы, что завертывание каждого LinearLayout
в ScrollView
- это "лучшая практика".
Тем не менее, по моему собственному опыту, я частосозданные макеты, которые используют ScrollView
+ LinearLayout
, даже когда я знаю, что мой контент будет соответствовать большинству телефонов.Я сделал это, потому что (1) я хочу поддерживать как книжную, так и альбомную ориентации (а у ландшафта часто не хватает высоты, чтобы отобразить все) и (2), потому что я хочу поддерживать любое устройство, которое могут иметь мои пользователи (и некоторые людиу меня действительно очень маленькие телефоны).
Хитрость заключается в том, чтобы различать случаи, когда ваш LinearLayout
просто разбивает экран на части по сравнению со случаями, когда ваш LinearLayout
является родителем для некоторого количества просмотров, каждое изих собственная фиксированная высота.Два Button
s рядом друг с другом, каждый занимает 50% ширины экрана, очевидно, не хотят ScrollView
вокруг них.Но форма из восьми EditText
полей друг над другом может быть хорошо заключена в ScrollView
, даже если все восемь помещаются на экране вашего персонального устройства просто отлично.
Недостатки наличия«extra» или «бесполезный» ScrollView
на более крупных телефонах настолько мал, что я никогда об этом не беспокоился.Один дополнительный экземпляр View
не повредит производительности и не израсходует слишком много дополнительной памяти.Впрочем, преимущества использования вашего приложения на крошечных экранах того стоят.