当我使用多滑块时,我遇到的一个问题是,当我滚动滑块时,我仅得到centimeter
值,但我没有更改英尺值,因此我需要帮助来更改英尺值。
class App extends React.Component {
state = {
sliderOneChanging: false,
sliderOneValue: [5],
multiSliderValue: [122, 222],
};
multiSliderValuesChange = values => {
this.setState({
multiSliderValue: values,
});
};
render() {
return (
<View style={styles.container}>
<View style={styles.sliders}>
<View style={styles.sliderOne}>
<Text style={styles.text}>{this.state.multiSliderValue[0]} cm </Text>
<Text style={styles.text}>({this.state.multiSliderValue[0]})</Text>
</View>
</View>
<View style={styles.containerSlider}>
<MultiSlider
values={[
this.state.multiSliderValue[0],
]}
sliderLength={400}
onValuesChange={this.multiSliderValuesChange}
min={122}
max={222}
allowOverlap
snapped
selectedStyle={{
backgroundColor: 'pink',
}}
unselectedStyle={{
backgroundColor: 'silver',
}}
trackStyle={{
height: 2,
}}
/>
</View>
</View>
);
}
}
最佳答案
您可以创建一个返回英尺值的函数,例如
const convertedCentoFeet = (values) => {
var realFeet = ((values * 0.393700) / 12);
var feet = Math.floor(realFeet);
var inches = Math.round((realFeet - feet) * 12);
return feet+"'"+inches;
}
然后像
<Text style={styles.text}>({convertedCentoFeet(this.state.multiSliderValue[0])}"))</Text>
关于react-native - 如何在react-native中使用多滑块将厘米值转换为英尺?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59782146/