5
Tôi có một NSSlider đang cố gắng chuyển đổi một phao thông thường thành một CGFloat. Mã mà tôi đang sử dụng:floatValue cho CGFloat
CGFloat testing = [mainSlider floatValue];
Tuy nhiên điều này chỉ đơn giản là tạo biến kiểm tra "0,00" khi tôi cố đăng nhập.
NSLog(@"%f", testing);
Có ai có ý tưởng nào về lý do điều này xảy ra không? Cảm ơn vì bất kì sự giúp đỡ.
Lưu ý rằng casting cho 'double' sẽ không khôi phục bất kỳ chính xác mất khi' floatValue' chuyển đổi các giá trị cho chính xác đơn . Tốt hơn là chỉ sử dụng 'doubleValue'. –
Ngoài ra, việc truyền tới (gấp đôi) là không cần thiết. Ngôn ngữ c làm điều đó ngầm khi gọi một hàm vargs với một đối số float. –
mainSlider không phải là nil, chỉ vì một lý do kỳ lạ mà nó không chuyển thành một CGFloat. Khi tôi đăng nhập nó như: NSLog (@ "% f", [mainSlider floatValue]), nó trả về kết quả. Nhưng không phải khi tôi tạo ra một CGFloat từ nó. – PF1