UISlider 划分范围
UISlider dividing into range
我想做这样的事情。我有一个UISlider
,它的最小值应该是0,最大值应该是1000.And 我想把这个范围分成10份。像这样。
0-----100----200----300----400
当用户从0拖动滑块应该直接停在100的位置而不是在0到100之间停止当他从100拖动它应该直接跳到200不应该在100到200之间停止likewise.How我可以吗做这个?请帮助我。
谢谢
好吧,只需分配您的滑块范围 0...10 并将更改的值乘以 100
你必须这样做:
slider.maximumValue = 步数;
slider.minimumValue = 0;
slider.continuous = 否;
设置用
NSUInteger 索引 = (NSUInteger)(slider_value + 0.5);
[滑块 setValue:index animated:NO];
前一天我和你有同样的需求。使用默认的 UISlider,您只能递增 +1 或 -1。因此,如果您希望增加其他值,则必须以编程方式进行。
对于你的情况,试试这个:
- (IBAction)[yourUISlider]:(id)sender {
[[yourUISliderProperty] setValue:((int)(( [yourUISlider].value + 50) / 100) * 100) animated:NO];
NSLog(@"%d", [yourUISlider].value );
}
对我有用,试试看:)
对于其他增量值,请查看此处的公式:
((int)(( [yourSlider] + [yourIncrement/2] ) / [yourIncrement]) *[yourIncrement])
然后NSLog或者输出值。
我想做这样的事情。我有一个UISlider
,它的最小值应该是0,最大值应该是1000.And 我想把这个范围分成10份。像这样。
0-----100----200----300----400
当用户从0拖动滑块应该直接停在100的位置而不是在0到100之间停止当他从100拖动它应该直接跳到200不应该在100到200之间停止likewise.How我可以吗做这个?请帮助我。
谢谢
好吧,只需分配您的滑块范围 0...10 并将更改的值乘以 100
你必须这样做:
slider.maximumValue = 步数;
slider.minimumValue = 0;
slider.continuous = 否;
设置用
NSUInteger 索引 = (NSUInteger)(slider_value + 0.5);
[滑块 setValue:index animated:NO];
前一天我和你有同样的需求。使用默认的 UISlider,您只能递增 +1 或 -1。因此,如果您希望增加其他值,则必须以编程方式进行。
对于你的情况,试试这个:
- (IBAction)[yourUISlider]:(id)sender {
[[yourUISliderProperty] setValue:((int)(( [yourUISlider].value + 50) / 100) * 100) animated:NO];
NSLog(@"%d", [yourUISlider].value );
}
对我有用,试试看:)
对于其他增量值,请查看此处的公式:
((int)(( [yourSlider] + [yourIncrement/2] ) / [yourIncrement]) *[yourIncrement])
然后NSLog或者输出值。