RN笔记:样式布局总结

2019-07-19  本文已影响0人  丿一丨丿丶丨一

Flexbox布局

flex 弹性布局 number
用于设置弹性盒模型分配空间,比如: flex:1

flexDirection 主轴的方向 enum('row','row-reverse','column','column-reverse')

justifyContent 主轴对齐方式 enum('flex-start','flex-end','center','space-between','space-around')

**alignItems ** 交叉轴对齐方式 enum('flex-start','flex-end','center','stretch')

结合使用实现垂直居中:
{flexDirection:'row',justifyContent:'center',alignItems :'center'}

flexWrap 轴线 enum('wrap', 'nowrap')

alignSelf enum('auto', 'flex-start', 'flex-end', 'center', 'stretch')
alignSelf决定了元素在父元素的次轴方向的排列方式(此样式设置在子元素上),其值会覆盖父元素的alignItems的值

图片相关

加载本地图片
<Image source={require('./my-icon.png')} />
加载网络图片
<Image source={{uri: '图片地址'}} />
背景图片使用 <ImageBackground/>
tip:图片必须要设置宽高,要使图片自适应宽度高度显示,使用:react-native-fit-image
resizeMode enum('cover','contain','stretch')

边框

宽度

颜色

外边距

内边距

圆角

样式
borderStyle:边框样式'solid'实线,'dotted'点, 'dashed'虚线

阴影(只对ios生效,可使用插件:react-native-shadow

定位

position enum('absolute','relative')
left/top/right/bottom 偏移距离

获取当前屏幕宽/高

  import { Dimensions } from 'react-native';
  const { height, width } = Dimensions.get('window');

颜色渐变

  yarn add react-native-linear-gradient
  react-native link react-native-linear-gradient
 import LinearGradient from 'react-native-linear-gradient';
//示例
<LinearGradient colors={[‘#fff’,  '#000']} start={{x: 0, y: 0}} end={{x: 1, y: 0}} style={{height:150}}></LinearGradient >

默认情况下,渐变色的方向是从上向下的,假如你想渐变色从左向右,或者斜角渐变,就需要设置下了start ,end 参数
start:{ x: number, y: number }
end:{ x: number, y: number }
其他设置,请详细看插件教程

上一篇下一篇

猜你喜欢

热点阅读