ios - 如何获得范围 slider 中的最终值?

标签 ios objective-c rangeslider

我正在使用 TT 范围 slider (双 slider )来过滤我的应用程序中的价格,一切都工作完美,但是当我的最终价格是一些(例如 20)而没有选择 slider 时,我单击应用按钮最终价格是不会出现,并且 slider 选项将达到 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];

最佳答案

添加此委托(delegate)方法,您将通过它获得最小和最大 slider 值。

 -(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"];

 }

关于ios - 如何获得范围 slider 中的最终值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53589611/

相关文章:

ios - 使用 xmpp 框架和 quickblox 服务器 iOS 发送群聊消息

android - 应用程序可以保密吗?

iOS 自定义 View (.XIB) 按钮绑定(bind)不起作用

iphone - 如何在 ios 中减小 PNG 大小以进行电子邮件共享

ios - 循环颜色列表并将它们设置为单元格背景色 | TableView | objective-C

python - Objective-C 中常用的数组选项

javascript - plotly Rangeslider如何确定是否选择了范围

objective-c - 为什么 class_respondsToSelector 和 respondsToSelector 在发送到 Class 时表现不同?

android - 如何更改 Material slider 字体

jquery - 在水平 jquery 范围 slider 之前和之后放置文本