我有一个滑块,我将它的值保存到用户默认值,然后在另一个视图中抓取该数字。然后我将该float转换为NSNumber以用于CiRadialGradient过滤器。
我保存的值如下:
[[NSUserDefaults standardUserDefaults] setFloat:_alphaSlider.value forKey:@"Alpha"];
并检索如下:
NSNumber *inRadius1 = [NSNumber numberWithFloat:[[NSUserDefaults standardUserDefaults] floatForKey:@"Alpha"]];
问题是当抓取滑块值并将其转换为NSNumber时,我得到值-1.10311e-146。我期待一些不同的东西。
在我的故事板中,滑块值设置为0到100.无论我放置滑块的位置,该值总是很大的负值。
有什么想法吗?
干杯。
答案 0 :(得分:1)
我猜你是这样记录的:
NSLog(@"%f", inRadius1);
但实际上NSNumber是一个Objective-C对象,所以你应该使用%@
:
NSLog(@"%@", inRadius1);