从设置plist返回浮点值

时间:2014-08-09 21:02:21

标签: objective-c jailbreak theos

我一直试图从/var/mobile/Library/Preferences/com.skylerk99.snappref.plist中提取值“tempF”来返回浮点值。

-(float) temperatureDegFahrenheit {
    NSDictionary *pref = [[NSDictionary alloc]initWithContentsOfFile:@"/var/mobile/Library/Preferences/com.sky.snap.plist"];
    NSString *tempF;
    if( [[pref objectForKey:@"showF"] boolValue] ) {
        return tempF;
    }
    else {
        return %orig;
    }
}

但我一直收到错误

cannot initialize return object of type 'float' with an lvalue of type 'NSString *'
   return tempF;

实现这一目标的最佳方法是什么,因为我显然不知道?

1 个答案:

答案 0 :(得分:2)

<强>更新

根据下面的讨论,让我们假设温度是通过名为temperatureTextField的UITextField输入的。您可以像这样得到输入温度的浮点值:

[[temperatureTextField.text stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]] floatValue];


该函数希望您返回float,但tempF是NSString *

要从float解析NSString值,请尝试此操作(顺便说一下,我假设您没有显示所有代码,否则您的tempF从未被分配):

[tempF floatValue];