/** * Sample React Native App * https://github.com/facebook/react-native * @flow */ import React,{ Component } from 'react'; import { AppRegistry,StyleSheet,Image,Text,TouchableHighlight,View } from 'react-native'; import ImageEqualEnlarge from './ImageEqualEnlarge.js' export default class ViewProject extends Component { render() { return ( <View style={styles.container}> <Text style={styles.textStyle}> happy </Text> <Text style={styles.textStyle}> 忧伤 </Text> </View> ); } } const styles = StyleSheet.create({ container: { flex:1,justifyContent: 'center',alignItems:'center',}, textStyle:{ height:100,width:200,fontSize:30,backgroundColor:'gray',textAlign:'center',//虽然样式中设置了 justifyContent: 'center',但无效 margin:5 }});AppRegistry.registerComponent('ViewProject',() => ViewProject);
Text 组件的样式键 textAlign 和 justifyContent 都设置为center,这样字符串应该垂直和水平都居中,但事实上,只会水平居中显示效果如图
正确的做法是 Text组件外边包一层View,且Text组件的样式除了fontSize键值其它样式键值都移到外层View的样式中 如下代码实现:
/** * Sample React Native App * https://github.com/facebook/react-native * @flow */ import React,View } from 'react-native'; import ImageEqualEnlarge from './ImageEqualEnlarge.js' export default class ViewProject extends Component { render() { return ( <View style={styles.container}> <View style={styles.ViewForTextStyle}> <Text style={styles.newTextStyle}> happy </Text> </View> <View style={styles.ViewForTextStyle}> <Text style={styles.newTextStyle}> 忧伤 </Text> </View> </View> ); } } const styles = StyleSheet.create({ container: { flex:1,},newTextStyle:{ fontSize:30,textStyle:{ height:100,margin:5 },ViewForTextStyle:{ height:100,margin:5 } }); AppRegistry.registerComponent('ViewProject',() => ViewProject);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。