What is the UIColor of the default UITableView separator?

前端 未结 12 1600
没有蜡笔的小新
没有蜡笔的小新 2021-01-31 15:09

Can anyone tell me the UIColor name or exact RGBA for the default iPhone UITableView separator?

It looks like a light gray color, but it\'s not [UIColor lightGrayC

12条回答
  •  轻奢々
    轻奢々 (楼主)
    2021-01-31 15:26

    The color is not guaranteed to be a specific color. It can be changed over OS and SDK versions. You can retrieve exact color dynamically by accessing separatorColor property.

    UITableView* TV = [[UITableView alloc] init];
    UIColor* C = [TV separatorColor];
    CGColorRef CGC = [C CGColor];
    

    Now you can get the each channel values through UIColor's methods. Or use the CGColor directly for drawing.

    Here's header file comment of the property in UITableView.h.

    @property(nonatomic,retain) UIColor *separatorColor;
    // default is the standard separator gray
    

    If you want to avoid instantiation cost of UITableView for each time, just get it once and cache it.


    As @Isuru noted in comment, you can write in Swift like this.

    UITableView().separ‌​atorColor
    

    As @Jordan noted in comment, you also can store the result to avoid further evaluation cost.

    let defaultTableSeparato‌​rColor = UITableView().separa‌​torColor
    

提交回复
热议问题