QSlider 滑动选择范围组件 >=v1.0.0
这不是一个受约束的组件。也就是说,如果你不更新值,在用户操作后,这个组件也不会还原到初始值。
属性
thumbSize { number }
滑块大小。
maximumTrackTintColor { string }
滑块右侧轨道的颜色。默认为蓝色。
minimumTrackTintColor { string }
滑块左侧轨道的颜色。默认为蓝色。
maximumValue { number }
滑块的最大值(当滑块滑到最右端时表示的值)。默认为1。
minimumValue { number }
滑块的最小值(当滑块滑到最左端时表示的值)。默认为0。
step { number }
滑块的最小步长。这个值应该在0到(maximumValue - minimumValue)之间。默认值为0。
value { number }
滑块的初始值。这个值应该在最小值和最大值之间。默认值是0。
onValueChange { function }
(value) => void
在用户拖动滑块的过程中不断调用此回调。
方法参数:
参数名 | 类型 | 描述 | 版本 |
---|---|---|---|
value | number | 当前的值 |
onSlidingComplete { function }
(value) => void
用户结束滑动的时候调用此回调。
方法参数:
参数名 | 类型 | 描述 | 版本 |
---|---|---|---|
value | number | 当前的值 |
示例
import React, {Component, StyleSheet, View, Text, Slider} from 'qunar-react-native'
class SliderExampleItem extends Component {
constructor(props) {
super(props)
this.state = {
sliderValue: 0
}
}
render() {
const {step, minimumValue, maximumValue} = this.props
return (
<View>
<Text style={styles.valueText}>{this.state.sliderValue}</Text>
<Slider
step={step}
value={this.state.sliderValue}
minimumValue={minimumValue}
maximumValue={maximumValue}
onValueChange={this.onValueChange.bind(this)}
onSlidingComplete={this.onSlidingComplete.bind(this)}
/>
</View>
)
}
onValueChange(v) {
this.setState({
sliderValue: v
})
}
onSlidingComplete(v) {
console.log(v)
}
}
const styles = StyleSheet.create({
valueText: {
marginBottom: 12,
textAlign: 'center',
}
});
module.exports = {
title: 'Slider',
scroll: true,
examples: [{
subtitle: 'Default settings',
render: () => {
return <SliderExampleItem/>
}
}, {
subtitle: 'minimumValue: -1, maximumValue: 2',
render: () => {
return <SliderExampleItem minimumValue={0} maximumValue={24} step={1}/>
}
}, {
subtitle: 'step: 0.25',
render: () => {
return <SliderExampleItem step={0.25}/>
}
}]