2011-01-23 57 views
0

我试图将十六进制颜色值转换为浮点数。我有一个DataController类类像这样的方法:可可触摸 - 作业中不兼容的类型

+(float)floatFromHexColorInteger:(float)hexFloat { 
    float newColorFloat = hexFloat/255.0f; 
    return newColorFloat; 
} 

我想用它来轻松获得0.0和1.0之间的颜色值,这样我就可以使用它像这样:

float colorFloat = [DataController floatFromHexColorInteger:79.0f]; 
//error on line above is: 
//Classes/RootViewController.m:53: error: incompatible types in assignment 
self.navigationController.toolbar.tintColor = [UIColor colorWithRed:colorFloat green:colorFloat blue:colorFloat alpha:1.0f]; 

我在第一行中遇到编译器错误(2),关于不兼容的类型。任何人都可以找出原因吗?

+1

你得到的确切的编译器错误信息是什么? – 2011-01-23 16:39:37

回答

3

如果+(float)floatFromHexColorInteger:(float)hexFloat被声明在某处(例如在.h文件中),您应该检查返回类型是否也是float

如果是别的,编译器可能会抛出一个错误。