私の現在のアプリでは、通常、非常に長い 10 進数、つまり 0.12345 または .123 に解決される方程式があります。しかし、これが機能するために必要な方法は、10進数を1つまたは2つだけ表示することです。これにより、前述の値に基づいて、本質的に0.12または0.1が生成されます。
これを行うために、私は次のことを行いました: CGFloat を NSString に取りました:
CGFloat eX1 = 0.12345
NSLog(@" eX1 = %f", eX1); //This of course , prints out 0.12345
NSNumberFormatter *XFormatter = [[NSNumberFormatter alloc] init];
Xformatter.numberStyle=NSNumberFormatterDecimalStyle;
Xformatter.maximumFractionDigits=1;
NSString *eX1F = [formatter stringFromNumber:@(eX1)];
NSLog (@"eX1F = %@",eX1F); //This prints out 0.1
しかし、私の問題は、フォーマットされた後、これを CGFloat として扱い続ける必要があることnumberFromString
ですNSNumber
。
my をフォーマットし、 orではなくCGFloat
として使用するにはどうすればよいですか?CGFloat
NSString
NSNumber
私が試した更新:
float backToFloat = [myNumber floatValue];
しかし、結果はフォーマットされていない数値です。0.10000
余分な0が必要です