我正在使用react-native-check-box
在我的应用中实现复选框。
假设我必须创建4个复选框,并且它应该正确呈现。但是现在渲染了4个框,但它们的文本却在上下移动,而如果存在间距问题,其余框应向下移到下一行。或者,它应该进行调整,但文字不会起伏不定。
请提出建议。
[]Facebook []Twitter []Whatsapp []Instagram
[]Facebook []Twitter
[]Whatsapp []Instagram
[]Fac []Twi []Wha []Ins
ebo tte tsa tag
ok r app ram
<View style={{
flexDirection:'row', backgroundColor:'#fff', marginBottom:8
}}>
<CheckBox
style={{flex: 1, padding: 1}}
onClick={()=>{
this.setState({
isChecked:!this.state.isChecked
})
}}
isChecked={true}
rightText={"Facebook"}
/>
<CheckBox
style={{flex: 1, padding: 1}}
onClick={()=>{
this.setState({
isChecked:!this.state.isChecked
})
}}
isChecked={false}
rightText={"Whatsapp"}
/>
<CheckBox
style={{flex: 1, padding: 1}}
onClick={()=>{
this.setState({
isChecked:!this.state.isChecked
})
}}
isChecked={this.state.isChecked}
rightText={"Instagram"}
/>
</View>
谢谢。
答案 0 :(得分:0)
我相信您可以使用flexWrap
进行布局,如here所述。为了使其能够在不同大小的视图上使用,重要的是指定Checkbox
组件的固定宽度和View
组件的固定高度。
答案 1 :(得分:0)
检查此-
import * as React from 'react';
import { Text, View, StyleSheet } from 'react-native';
import CheckBox from 'react-native-check-box';
export default class App extends React.Component {
constructor() {
super();
this.state = {
isChecked: false,
};
}
render() {
return (
<View style={{ flex: 1, justifyContent: 'center' }}>
<View
style={{
width: '100%',
justifyContent: 'center',
alignItems: 'center',
}}>
<View
style={{
width: '100%',
flexDirection: 'row',
justifyContent: 'space-between',
alignItems: 'center',
}}>
<CheckBox
style={{ width: '50%', padding: 1 }}
rightTextStyle={{ marginLeft: 0, paddingLeft: 0 }}
onClick={() => {
this.setState({
isChecked: !this.state.isChecked,
});
}}
isChecked={true}
rightText={'Facebook'}
/>
<CheckBox
style={{ width: '50%', padding: 1 }}
rightTextStyle={{ marginLeft: 0, paddingLeft: 0 }}
onClick={() => {
this.setState({
isChecked: !this.state.isChecked,
});
}}
isChecked={false}
rightText={'Whatsapp'}
/>
</View>
<View
style={{
width: '100%',
flexDirection: 'row',
justifyContent: 'space-between',
alignItems: 'center',
}}>
<CheckBox
style={{ width: '50%', padding: 1 }}
rightTextStyle={{ marginLeft: 0, paddingLeft: 0 }}
onClick={() => {
this.setState({
isChecked: !this.state.isChecked,
});
}}
isChecked={this.state.isChecked}
rightText={'Instagram'}
/>
<CheckBox
style={{
width: '50%',
padding: 1,
}}
rightTextStyle={{ marginLeft: 0, paddingLeft: 0 }}
onClick={() => {
this.setState({
isChecked: !this.state.isChecked,
});
}}
isChecked={this.state.isChecked}
rightText={'Twitter'}
/>
</View>
</View>
</View>
);
}
}