使用不适用于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; ]