MCEscher could tile a surface with lizards, but you just want your android app to look good.
If you have a display or part thereof that would work as a grid, there is a tablish grid sublass of thingers for that with its own thinger suclasses, but today we are going to discuss rectangles.
The android screen is generally a rectangle or close enough to that. Here is an example:
Imagine that for your app you wish to divide that up into a top rectangle, a middle rectangle, and a bottom rectangle. You want to divide the top and bottom rectangles into left and right justified rectangle with space in the middle. You want to divide the middle rectangle vertically into eight equal sized rectangles that represent the hours of the day.
The class we want to use ( because we are so object oriented ( we even objectify our lovers ) ) is a "LinearLayout". Now LinearLayout extends ViewGroup which extends View which extends Object. And LinearLayout has 12 known subclasses and an unknown number of unknown subclasses.
Each rectangle is defined by a linear layout. We start from the outside and work our way in.
Now WS divides our space vertically so we give it an attribute android:orientation="vertical".
For similar reasons MM need the attribute android:orientation="vertical".
BB and TT divide their spaces horizontally so they need the attribute android:orientation="horizontal". TL, TR, BL, BR and M1-M8 do not divide their spaces and do not need an orientation attribute.
Since TL, TR, BL, BR and M1-M8 do not divide their spaces are they superfluous?