使用不适用于UITableView seperatorColor?

我正在尝试configuration深灰色分隔符颜色。 为什么下面什么都不做?

self.tableView.seperatorStyle = UITableViewCellSeperatorStyleSingleLine; self.tableView.seperatorColor = [UIColor colorWithRed: 127 green:127 blue:127 alpha:1]; 

返回一个没有分离器的表格。

只要我使用[UIColor blackColor],那么我得到分离器就好了。 这是怎么回事?

你需要除以255.0

因为我几乎没有使用1.0和0.0之间的值,所以我创build了一个非常简单的UIColor类别,它自己完成了混乱的分割:(来自http://github.com/Jon889/JPGeneral

 //.h file @interface UIColor (JPExtras) + (UIColor *)colorWithR:(CGFloat)red G:(CGFloat)green B:(CGFloat)blue A:(CGFloat)alpha; @end //.m file @implementation UIColor (JPExtras) + (UIColor *)colorWithR:(CGFloat)red G:(CGFloat)green B:(CGFloat)blue A:(CGFloat)alpha { return [UIColor colorWithRed:(red/255.0) green:(green/255.0) blue:(blue/255.0) alpha:alpha]; } @end 

所以你可以做(​​如果你导入我链接到上面的类别):

 [UIColor colorWithR:127 G:127: B:127 A:1]; 

因为你的UIColor方法需要一个0-1的浮点数,而不是0-255。 您需要将所有的RGB值除以255.0,如下所示:

 self.tableView.seperatorColor = [UIColor colorWithRed:127.0f/255.0f green:127.0f/255.0f blue:127.0f/255.0f alpha:1.0f]; 

你必须用255来划分你的值,因为范围是0-1。 取127/255 = 0.49f,然后input。 它在那里,只是白色:)

编辑:评论的原因,我添加了一些代码,如何解决它:

 -(float)getRGBValue:(int) rgbValue{ return rgbValue/255.0; ]