Если вы сравните блочную модель Android с блочной моделью CSS, я пойму, что Android действительно легче понять, и при этом гораздо меньшей сложности.У вас нет таких махинаций, как дополнение, добавляемое к ширине элемента.ИМХО, логика позиционирования (CSS: float / absolute / относительный и т. Д.) Очень хорошо и элегантно инкапсулирована в компонентах макета Android.Хотя некоторые вещи сложно сделать в Android (например, иметь панель инструментов внизу представления и заполнять остальные списком - но это также включает в себя злобные хакерские атаки в CSS), это гораздо более предсказуемо, чем CSS.
Iпредложил бы прочитать все компоненты макета, так как блочная модель проста (поля, отступы, ширина, высота), а большая часть позиционирования и выравнивания зависит от компонента макета (например, «gravity» в LinearLayout, «layout_above»/ under / toLeftOf / toRightOf "в RelativeLayout, ...).
НО: я согласен, что полное руководство (+ хорошие примеры и аналогии) по этой теме поможет новичкам быстрее прийти к согласию с макетами Android, поскольку некоторая углубленная информация доступна только в зависимости от конкретного случая.фрагменты кода (если говорить только о сети, книги, безусловно, работают лучше).
В качестве примечания к блочной модели: одна «особенность», с которой я столкнулся, заключается в том, что 9-patch-drawables , которые устанавливаются в качестве фона для элемента, влияют на заполнение элемента.Если заполнение блока 9-патча не равно 0, заполнение элемента устанавливается соответствующим образом, если не переопределяется.Это действительно однажды укусило меня.