Javascript Can';t将我的复选框样式设置为'alignSelf:';柔性端或`对:0`
我无法将我的复选框设置为Javascript Can';t将我的复选框样式设置为'alignSelf:';柔性端或`对:0`,javascript,css,reactjs,react-native,flexbox,Javascript,Css,Reactjs,React Native,Flexbox,我无法将我的复选框设置为alignSelf:“flex end”或right:0 我想把复选框放在上面和右边,但照片上有奇怪的填充物。我尝试了许多不同的风格,但都不管用( 这是FlatList的renderItem() this.\u handleImagePress(item.id,item.configure\u img)}> 下面是平面列表函数 render() { return ( <View style={styles.root}>
alignSelf:“flex end”
或right:0
我想把复选框放在上面和右边,但照片上有奇怪的填充物。我尝试了许多不同的风格,但都不管用(
这是FlatList的renderItem()
this.\u handleImagePress(item.id,item.configure\u img)}>
下面是平面列表函数
render() {
return (
<View style={styles.root}>
<FlatList
data={this.props.outfits}
extraData={this.state.selectedStyles}
keyExtractor={this._keyExtractor}
renderItem={this._renderItem}
numColumns={3}
renderHeader={this._renderHeader}/>
</View>
);
}
render(){
返回(
);
}
更新修复程序我想原生基复选框在样式设置上很糟糕。这是一个工作版本。是否有任何优化?或更好的选项
<TouchableWithoutFeedback
style={{flex:1}}
onPress={() => this._handleImagePress(item.id, item.outfit_img)}>
<View style={styles.rowImage}>
<Image
key={item.id}
source={{uri: item.outfit_img}}
style={styles.rowImage}
resizeMode="cover"
/>
<View style={{height:32, width:32, position:'absolute', top:0, right:0, marginTop:4, paddingRight:12}}>
<CheckBox checked={isSelected} color="#f64e59"/>
</View>
</View>
</TouchableWithoutFeedback>
this.\u handleImagePress(item.id,item.configure\u img)}>
从复选框中删除位置:绝对值
,改为将对齐内容:间距
添加到元素的父元素。从复选框中删除位置:绝对值
,改为将对齐内容:间距
添加到元素的父元素。绝对定位fle的子元素x容器不再是柔性项,因此不遵循柔性对齐属性(align-*
和justify-*
)。它们确实遵循偏移关键字(left
,right
,等等),但这些偏移是相对于最近定位的祖先(或者,如果没有,则是相对于根元素)计算的。尝试将position:“relative”
添加到可触摸且无反馈的元素的样式
属性中,使其成为复选框最接近的定位祖先,以便它可以相对定位。flex容器的绝对定位子项不再是flex项,因此不遵守flex对齐属性(align-*
和justify-*
)。它们确实遵循偏移关键字(left
、right
等),但这些偏移是相对于最近定位的祖先(或者,如果没有,则相对于根元素)计算的。尝试将位置:'relative'
添加到您的触摸屏上,而无需反馈
元素的样式
属性,使其成为复选框最接近的祖先,这样它就可以相对定位。我在这里创建了一个零食,希望您能期待这种行为。我在这里创建了一个零食,希望您能期待这种行为。我刚刚尝试了您的版本,但它为复选框呈现了另一行。然而,我尝试在图像上构建的是复选框。感谢您的具体回答,尽管我很感激,但我刚刚尝试了您的版本,但它为复选框呈现了另一行。然而,我尝试构建的是t上的复选框图片。感谢你给出了具体的答案,尽管我很欣赏它。在复选框中左键位置:'absolute'
,并将位置:'relative'
置于可触摸且不不透明的位置。
。它仍然呈现相同的东西。我做错了吗?我把我的确切代码放在了我的问题上。-问题被编辑了。你不也添加右键:0
(而不是alignSelf
)对于复选框?我尝试了许多不同的方法,但问题是native base的复选框。如果您感兴趣,我只是用工作版本编辑了这个问题。我在复选框上留下了位置:'absolute'
,并将位置:'relative'
放置到TouchableWithoutOpacity
。它仍然呈现相同的内容。我做错了吗把我的确切代码放在我的问题上。-问题已编辑。您是否也添加了右侧:0
(而不是对齐自身
)对于复选框?我尝试了许多不同的方法,但问题是native base的复选框。我只是用工作版本编辑了问题,如果你感兴趣的话。实际问题是native base复选框。我花了2个小时来解决这个问题:(太糟糕了,实际问题是native base复选框。)我花了2个小时来解决这个问题:(太糟糕了
<TouchableWithoutFeedback
style={{flex:1}}
onPress={() => this._handleImagePress(item.id, item.outfit_img)}>
<View style={styles.rowImage}>
<Image
key={item.id}
source={{uri: item.outfit_img}}
style={styles.rowImage}
resizeMode="cover"
/>
<View style={{height:32, width:32, position:'absolute', top:0, right:0, marginTop:4, paddingRight:12}}>
<CheckBox checked={isSelected} color="#f64e59"/>
</View>
</View>
</TouchableWithoutFeedback>