5
Mam NSSlider, który próbuje przekonwertować zwykły float na CGFloat. Kod, który używam:floatValue dla CGFloat
CGFloat testing = [mainSlider floatValue];
Jednak to po prostu sprawia, że zmienna testowania „0.00”, kiedy próbuje go zalogować.
NSLog(@"%f", testing);
Czy ktoś ma jakieś pomysły, dlaczego tak się stanie? Dzięki za pomoc.
Zauważ, że rzucając na 'double' nie przywróci żadnych precyzję utracone podczas' floatValue' przeliczone na wartość pojedynczej precyzji . Lepiej po prostu użyć 'doubleValue'. –
Również rzutowanie na (podwójne) jest niepotrzebne. Język c robi to niejawnie, wywołując funkcję vargs z argumentem float. –
mainSlider nie jest zerowy, tylko z jakiegoś dziwnego powodu nie przenosi się do CGFloat. Kiedy loguję się jak: NSLog (@ "% f", [mainSlider floatValue]), zwraca wynik. Ale nie kiedy stworzę z tego CGFloat. – PF1