gpt4 book ai didi

react-native - 为什么我的 React Native flex wrap 不起作用?

转载 作者:行者123 更新时间:2023-12-04 05:02:42 26 4
gpt4 key购买 nike

我正在尝试对一些标签进行 flex 包装,但几乎没有任何效果,我已经尝试了所有方法,但仍然无法包装 是否 React Native 有包装问题?

我有我的标签输出,它只是包装在一个 View 中,它具有所有正确的设置。

我现在的结果
enter image description here

这是我的代码:

 <View
style={{
width: responsiveWidth(18),
height: responsiveHeight(3.5),
borderRadius: 10,
backgroundColor: "#ffe8e8",
alignItems: "center",
justifyContent: "center",
marginLeft: responsiveWidth(8)
}}
>
<Text
style={{
color: "#000",
fontSize: responsiveFontSize(1.5),
fontFamily: "Iransans"
}}
>
8:00 AM
</Text>
</View>;

for (var i = 1; i < times.length / 4; i++) {
//i shomarandeye radif
for (var j = 1; j % 4 == 0; j++) {
//j shomarandeye sheyaaye darune radif
}
}

const isEmptyPhotoTags = _.isEmpty(photoTags);
let renderTags = [];
if (!isEmptyPhotoTags) {
photoTags[0].forEach(function(tag, i) {
renderTags.push(
<View
key={i}
style={{
flex: 1,
flexDirection: "row",
flexWrap: "wrap",
alignItems: "flex-start",
justifyContent: "space-between",
alignContent: "space-between",
paddingLeft: 15
}}
>
<View style={{ height: 52, width: 146, padding: 5 }}>
<TouchableHighlight style={styles.buttonTag}>
<Text style={styles.buttonTagText}>{tag}</Text>
</TouchableHighlight>
</View>
</View>
);
});
}

<View style={styles.tagSection}>
<View
style={{
flex: 1,
flexDirection: "row",
flexWrap: "wrap",
alignItems: "flex-start",
justifyContent: "flex-start"
}}
>
<Icon
name="tag"
size={29}
type={"font-awesome"}
color={"#58595B"}
style={{ paddingLeft: 20, paddingRight: 10 }}
/>
<Text style={styles.tagSectionHeaderText}>Tags</Text>
</View>
<View
style={{
flex: 1,
flexDirection: "row",
flexWrap: "wrap",
alignItems: "flex-start",
justifyContent: "space-between",
alignContent: "space-between"
}}
>
{!isEmptyPhotoTags ? (
<View
style={{
flex: 1,
flexDirection: "row",
flexWrap: "wrap",
alignItems: "flex-start",
alignContent: "space-between",
justifyContent: "space-between"
}}
>
{renderTags}
</View>
) : (
<Text style={styles.tagSectionNoTags}>No Tags</Text>
)}
</View>
</View>;

tagSection: {
flex: 1,
flexDirection: 'column',
backgroundColor:'#F7F8F9',
paddingTop:10,
flexWrap:'wrap',
alignItems: 'flex-start',
justifyContent: 'flex-start'
},
tagSectionHeaderText:{
fontSize: 21,
lineHeight: 22,
color: '#58595b',
fontWeight: '600',
paddingRight:10,
},
tagSectionNoTags:{
fontSize: 18,
lineHeight: 22,
color: '#58595b',
fontWeight: '400',
fontStyle:'italic',
paddingLeft:10,
},
buttonTag: {
borderTopLeftRadius: 10,
borderTopRightRadius: 10,
borderBottomRightRadius: 10,
borderBottomLeftRadius: 10,
backgroundColor: '#6575BE',
flex:1,
justifyContent: 'center',
alignItems: 'center',
},
buttonTagText: {
textAlign: 'center',
fontSize: 20,
lineHeight: 22,
color: '#fff',
fontWeight: '600',

}

更新代码:
 const isEmptyPhotoTags = _.isEmpty(photoTags);
let renderTags = [];
if (!isEmptyPhotoTags) {
photoTags[0].forEach(function(tag, i) {
renderTags.push(
<View key={i} style={[styles.wrapTags, { paddingLeft: 15 }]}>
<View style={{ height: 52, width: 146, padding: 5 }}>
<TouchableHighlight style={styles.buttonTag}>
<Text style={styles.buttonTagText}>{tag}</Text>
</TouchableHighlight>
</View>
</View>
);
});
}

<View style={styles.tagSection}>
<View
style={{
flex: 1,
flexDirection: "row",
flexWrap: "wrap",
alignItems: "flex-start",
justifyContent: "flex-start"
}}
>
<Icon
name="tag"
size={29}
type={"font-awesome"}
color={"#58595B"}
style={{ paddingLeft: 20, paddingRight: 10 }}
/>
<Text style={styles.tagSectionHeaderText}>Tags</Text>
</View>
<View style={styles.wrapTags}>
{!isEmptyPhotoTags ? (
<View
style={{
flexDirection: "row",
flexWrap: "wrap",
alignItems: "flex-start",
alignContent: "space-between",
justifyContent: "space-between",
paddingBottom: 10
}}
>
{renderTags}
</View>
) : (
<Text style={styles.tagSectionNoTags}>No Tags</Text>
)}
</View>
</View>;

tagSection: {
//flex: 1,
flexDirection: 'column',
backgroundColor:'#F7F8F9',
paddingTop:10,
flexWrap:'wrap',
alignItems: 'flex-start',
justifyContent: 'flex-start'
},
tagSectionHeaderText:{
fontSize: 21,
lineHeight: 22,
color: '#58595b',
fontWeight: '600',
paddingRight:10,
},
tagSectionNoTags:{
fontSize: 18,
lineHeight: 22,
color: '#58595b',
fontWeight: '400',
fontStyle:'italic',
paddingLeft:10,
},
wrapTags:{
flex:1,
flexDirection:'row',
flexWrap:'wrap',
alignItems: 'flex-start',
justifyContent: 'flex-start'
},
buttonTag: {
borderTopLeftRadius: 10,
borderTopRightRadius: 10,
borderBottomRightRadius: 10,
borderBottomLeftRadius: 10,
backgroundColor: '#6575BE',
flex:1,
justifyContent: 'center',
alignItems: 'center',
},
buttonTagText: {
textAlign: 'center',
fontSize: 20,
lineHeight: 22,
color: '#fff',
fontWeight: '600',

},

最佳答案

您应该删除 flex: 1解决问题。

关于react-native - 为什么我的 React Native flex wrap 不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46046974/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com