如何获得范围滑块中的最终值?
Posted
技术标签:
【中文标题】如何获得范围滑块中的最终值?【英文标题】:How to get final Value in range Slider? 【发布时间】:2019-05-04 12:03:44 【问题描述】:我正在使用 TT 范围滑块(双滑块)在我的应用程序中过滤价格,一切正常,但是当我的最终价格是一些(例如 20)而没有选择滑块时,我点击应用按钮最终价格是不来,如果有任何答案,滑块选项将变为 0 值,将不胜感激。提前致谢。 我的代码
float price = [_filterpriceStr floatValue];
NSLog(@"%f",price);
if ([[GlobalVariables appVars].Apply isEqualToString:@"Apply"])
float minimum = [[[NSUserDefaults standardUserDefaults]valueForKey:@"filtermin"] floatValue];
float maxmum = [[[NSUserDefaults standardUserDefaults]valueForKey:@"filtermax"] floatValue];
minValue = [[NSUserDefaults standardUserDefaults]valueForKey:@"filtermin"];
maxValue = [[NSUserDefaults standardUserDefaults]valueForKey:@"filtermax"];
//standard range slider
self.rangeSlider.delegate = self;
self.rangeSlider.minValue = 0;
self.rangeSlider.maxValue = price;
self.rangeSlider.step = price;
self.rangeSlider.selectedMinimum = minimum;
self.rangeSlider.selectedMaximum = maxmum;
NSNumberFormatter *customFormatter = [[NSNumberFormatter alloc] init];
customFormatter.positivePrefix = @"£";
self.rangeSlider.numberFormatterOverride = customFormatter;
self.rangeSlider.tintColorBetweenHandles = [UIColor colorWithRed:15.0f/255.0f green:201.0f/255.0f blue:218.0f/255.0f alpha:1.0f];
else
float price = [_filterpriceStr floatValue];
//standard rsnge slider
self.rangeSlider.delegate = self;
self.rangeSlider.minValue = 0;
self.rangeSlider.maxValue = price;
self.rangeSlider.selectedMinimum = 0;
self.rangeSlider.selectedMaximum = price;
NSNumberFormatter *customFormatter = [[NSNumberFormatter alloc] init];
customFormatter.positivePrefix = @"£";
self.rangeSlider.numberFormatterOverride = customFormatter;
self.rangeSlider.tintColorBetweenHandles = [UIColor colorWithRed:15.0f/255.0f green:201.0f/255.0f blue:218.0f/255.0f alpha:1.0f];
当应用按钮点击时
[GlobalVariables appVars].PriceRange = @"PriceRange";
[[NSUserDefaults standardUserDefaults]setValue:minValue forKey:@"filtermin"];
[[NSUserDefaults standardUserDefaults]setValue:maxValue forKey:@"filtermax"];
[[NSUserDefaults standardUserDefaults]synchronize];
NSLog(@"%@",maxValue);
[self.navigationController popViewControllerAnimated:NO];
【问题讨论】:
【参考方案1】:添加此委托方法,您将使用它获取最小和最大滑块值。
-(void)rangeSlider:(TTRangeSlider *)sender didChangeSelectedMinimumValue:(float)selectedMinimum andMaximumValue:(float)selectedMaximum
NSLog(@" Min Value: %.0f Max Value: %.0f", selectedMinimum, selectedMaximum);
[[NSUserDefaults standardUserDefaults]setValue:selectedMinimum forKey:@"filtermin"];
[[NSUserDefaults standardUserDefaults]setValue:selectedMaximum forKey:@"filtermax"];
【讨论】:
我的问题是当我的滑块值是 0 到 20 时,我点击应用按钮它会变为 0 值 按应用时不要将最小值和最大值分配给滑块。只需逐步调试您的最终应用程序,避免重复编码。您可以简单地从上述方法中获取您的最小值和最大值。只需将它传递给全球,就是这样。 不,当我选择价格时它不起作用,它取最终值并点击最终值它取一些最小值 嗨@santoshi 请检查这个简单的演示。它非常清晰易懂。这是链接“we.tl/t-maHRfoW06y” 您需要更改应用标识符和开发者证书。所有文件都在那里,请检查。以上是关于如何获得范围滑块中的最终值?的主要内容,如果未能解决你的问题,请参考以下文章