我目前有一个简单的图例组件,它产生如下输出:
问题是我手动将height
蓝色矩形设置为与文本一样高。有什么方法可以告诉 View 只是根据文本的高度自然扩展,而不必手动将某个数字设置为height
?
您可以试用Snack或查看代码:
import * as React from 'react';
import { Text, View, StyleSheet } from 'react-native';
class App extends React.Component {
render() {
return (
<View style={styles.container}>
<View style={styles.legend}>
<View style={styles.item}>
<View style={styles.shape} />
<View>
<Text>Food</Text>
<Text>25%</Text>
</View>
</View>
<View style={styles.item}>
<View style={styles.shape} />
<View>
<Text>Utilities</Text>
<Text>35%</Text>
</View>
</View>
<View style={styles.item}>
<View style={styles.shape} />
<View>
<Text>Misc.</Text>
<Text>40%</Text>
</View>
</View>
</View>
</View>
);
}
}
const styles = StyleSheet.create({
container: {
flex: 1,
justifyContent: 'center',
alignItems: 'center',
backgroundColor: 'white',
marginHorizontal: 50,
},
legend: {
width: '100%',
flexDirection: 'row',
justifyContent: 'space-between'
},
item: {
flexDirection: 'row',
alignItems: 'center'
},
shape: {
backgroundColor: 'blue',
width: 15,
height: 30, // I DONT WANT TO HAVE TO DO THIS
marginRight: 5
}
});
export default App;
任何帮助将不胜感激,谢谢!