Using [UIColor colorWithRed:green:blue:alpha:] doesn't work with UITableView seperatorColor?

前端 未结 4 1507
天命终不由人
天命终不由人 2020-11-29 20:10

I\'m trying to configure a dark gray seperator color. Why does the following do nothing?

self.tableView.seperatorStyle = UITableViewCellSeperatorStyleSingleL         


        
相关标签:
4条回答
  • 2020-11-29 20:45

    You need to divide by 255.0

    Because I hardly ever use values between 1.0 and 0.0, I created a very simple UIColor category that does the messy looking division by itself: (from 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
    

    So you can just do(If you import the category I linked to above):

    [UIColor colorWithR:127 G:127: B:127 A:1];
    
    0 讨论(0)
  • 2020-11-29 20:51

    There are two new methods in UIColor that accept integer values from 0 to 255:

    UIColor(red: Int, green: Int, blue: Int)
    

    and

    UIColor(alpha: Float, red: Int, green: Int, blue: Int)
    

    It's not in the documentation but I've used it and it works like a charm.

    0 讨论(0)
  • 2020-11-29 20:54

    You have to divide your values with 255, because the range is 0-1. Take 127/255 = 0.49f and type in that instead. It's there, it's just white :)

    edit: cause of comments, I added some code as to how I solve it:

    -(float)getRGBValue:(int) rgbValue{  
        return rgbValue/255.0;
    ]
    
    0 讨论(0)
  • 2020-11-29 20:56

    Because your UIColor method requires a float from 0-1, not 0-255. You need to divide all your RGB values by 255.0, as follows:

    self.tableView.seperatorColor = [UIColor colorWithRed:127.0f/255.0f green:127.0f/255.0f blue:127.0f/255.0f alpha:1.0f];
    
    0 讨论(0)
提交回复
热议问题