React Native Note:Design
刻畫面必備知識,沒弄懂的話連勞動的權力都沒有。
Style
- 只是組件的其中一個 props
Height and Width
Fixed Dimensions
將 width 跟 height 用數值表示固定尺寸
單位都是 density-independent pixels
1 | const FixedDimensionsBasics = () => { |
Flex Dimensions
flex: 1
表示填充所有可用空間
如果父容器沒有指定的 width 跟 height 或是 flex,那麼父容器的大小就會是 0,將導致子視圖無法顯示
1 | const FlexDimensionsBasics = () => { |
Percentage Dimensions
能直接指定百分比
1 | const PercentageDimensionsBasics = () => { |
更常用的方式是獲取設備窗口尺寸,再乘上 0~1 的小數達到比例效果
1 | const windowWidth = Dimensions.get('window').width |
Layout with Flexbox
Flex Direction
flexDirection: column | row | column-reverse | row-reverse
指定 children 排序方向為垂直或水平
Layout Direction
direction: ltr | rtl
指定 layout 從左還右開始排
Justify Content
justifyContent: flex-start | flex-end | center | space-between | space-around | space-evenly
沿主軸方向處理 children
Align Items
alignItems: stretch | flex-start | flex-end | center | baseline
沿非主軸方向處理 children
Align Self
alignSelf: stretch | flex-start | flex-end | center | baseline
跟 alignItems 類似,不過是處理自己