React Native style属性重载

let styles = StyleSheet.create({
popupContainer: {
flex: 1,
position: 'absolute',
top: 0,
left: 0,
justifyContent: 'center',
alignItems: 'center',
width: screen.width,
height: screen.height,
overflow: 'hidden',
backgroundColor: 'rgba(00, 00, 00, 0)',
},
overlay: {
flex: 1,
position: 'absolute',
top: 0,
left: 0,
width: screen.width,
height: screen.height,
backgroundColor: '#000',
opacity: .5,
},
tipBoxView: {
backgroundColor: '#fff',
justifyContent: 'center',
alignItems: 'center',
width: screen.width - 50,
borderRadius: 12,
overflow: 'hidden',
},
tipBox: {
flex: 1,
paddingTop: 15,
flexDirection: 'column',
justifyContent: 'center',
alignItems: 'center',
},
tipTitleBox: {
height: 30,
width: screen.width - 50,
justifyContent: 'center',
alignItems: 'center',
},
tipTitle: {
fontSize: 19,
fontWeight: '500',
textAlign: 'center',
},
tipContentBox: {
flex: 1,
flexDirection: 'column',
marginBottom: 15,
marginTop: 10,
justifyContent: 'center',
alignItems: 'center',
},
tipContent: {
fontSize: 16,
marginBottom: 5,
textAlign: 'center',
},
line: {
height: screen.pixel,
width: screen.width - 50,
backgroundColor: '#ddd',
},
btnBox: {
width: screen.width - 50,
flexDirection: 'row',
justifyContent: 'center',
alignItems: 'center',
height: 50,
},
btnTextBox: {
flex: 1,
height: 50,
justifyContent: 'center',
alignItems: 'center',
},
btnLine: {
height: 50,
width: screen.pixel,
backgroundColor: '#ddd',
},
btnText: {
textAlign: 'center',
fontSize: 16,
color: '#149be0',
},
hidden: {
position: 'absolute',
height: 0,
width: 0,
top: 0,
left: 0,
},
});


if(Platform.OS === 'ios'){
styles = {
...styles,
tipTitle: {
fontSize: 20,
fontWeight: '500',
textAlign: 'center',
},
tipContent: {
fontSize: 16,
marginTop: 3,
marginBottom: 7,
textAlign: 'center',
},
}

}

ReactNative之style使用指南

  1. ReactNative中能使用的css样式有哪些呢
    Valid style props: [

      "alignItems",

      "alignSelf",

      "backfaceVisibility",

      "backgroundColor",

      "borderBottomColor",

      "borderBottomLeftRadius",

      "borderBottomRightRadius",

      "borderBottomWidth",

      "borderColor",

      "borderLeftColor",

      "borderLeftWidth",

      "borderRadius",

      "borderRightColor",

      "borderRightWidth",

      "borderStyle",

      "borderTopColor",

      "borderTopLeftRadius",

      "borderTopRightRadius",

      "borderTopWidth",

      "borderWidth",

      "bottom",

      "color",

      "elevation",

      "flex",

      "flexDirection",

      "flexWrap",

      "fontFamily",

      "fontSize",

      "fontStyle",

      "fontWeight",

      "height",

      "justifyContent",

      "left",

      "letterSpacing",

      "lineHeight",

      "margin",

      "marginBottom",

      "marginHorizontal",

      "marginLeft",

      "marginRight",

      "marginTop",

      "marginVertical",

      "opacity",

      "overflow",

      "overlayColor",

      "padding",

      "paddingBottom",

      "paddingHorizontal",

      "paddingLeft",

      "paddingRight",

      "paddingTop",

      "paddingVertical",

      "position",

      "resizeMode",

      "right",

      "rotation",

      "scaleX",

      "scaleY",

      "shadowColor",

      "shadowOffset",

      "shadowOpacity",

      "shadowRadius",

      "textAlign",

      "textAlignVertical",

      "textDecorationColor",

      "textDecorationLine",

      "textDecorationStyle",

      "textShadowColor",

      "textShadowOffset",

      "textShadowRadius",

      "tintColor",

      "top",

      "transform",

      "transformMatrix",

      "translateX",

      "translateY",

      "width",

      "writingDirection"]

  2. style使用内连方式 style={{flex:1,borderColor:'red'}}
  3. style包裹使用style={[styles.style1,styles.style2]}
  4. 同时包裹样式和内连style={[styles.style1,{flex:1,borderWidth:1}]}
  5. StyleSheet提供了一种类似CSS样式表的抽象。

    创建一个样式表:

    var styles = StyleSheet.create({
      container: {
        borderRadius: 4,
        borderWidth: 0.5,
        borderColor: '#d6d7da',
      },
      title: {
        fontSize: 19, fontWeight: 'bold', }, activeTitle: { color: 'red', }, }); 

    使用一个样式表:

    <View style={styles.container}>
      <Text style={[styles.title, this.props.isActive && styles.activeTitle]} /> </View>
     
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值