誰かがデフォルトのiPhone UITableViewセパレータのUIColor名または正確なRGBAを教えてもらえますか?
薄い灰色のように見えますが、[UIColor lightGrayColor]
ではありません。それよりも軽いです。
…CGContextSetRGBStrokeColor
に関しては、次のようになります。
CGContextSetRGBStrokeColor (
CGContextRef c,
224.0/255.0,
224.0/255.0,
224.0/255.0,
CGFloat alpha
);
非常にシンプルで、うまくいけばあなたの問題の解決策です。
色は特定の色であるとは限りません。 OSおよびSDKのバージョンを変更できます。 separatorColor
プロパティにアクセスして、正確な色を動的に取得できます。
UITableView* TV = [[UITableView alloc] init];
UIColor* C = [TV separatorColor];
CGColorRef CGC = [C CGColor];
これで、UIColor
のメソッドを介して各チャネルの値を取得できます。または、CGColor
を直接使用して描画します。
以下は、UITableView.h
のプロパティのヘッダーファイルのコメントです。
@property(nonatomic,retain) UIColor *separatorColor;
// default is the standard separator gray
毎回UITableView
のインスタンス化コストを避けたい場合は、一度取得してキャッシュしてください。
@ Isur がコメントに記載されているように、Swiftのように書くことができます。
UITableView().separatorColor
@ Jordan のコメントに記載されているように、結果を保存して、さらなる評価コストを回避することもできます。
let defaultTableSeparatorColor = UITableView().separatorColor
iOS 7:で変更されたようです
色はRGB(200、199、204)です:
[UIColor colorWithRed:200/255.0 green:199/255.0 blue:204/255.0 alpha:1.0];
また、適切な行の高さが1ピクセルであることを忘れないでください。対応するUIViewを作成するためのコード:
UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 640, 1/[[UIScreen mainScreen] scale])];
view.backgroundColor = [UIColor colorWithRed:200/255.0 green:199/255.0 blue:204/255.0 alpha:1.0];
[UIColor colorWithRed:224/255.0 green:224/255.0 blue:224/255.0 alpha:1.0];
Swift
デフォルトに戻すには、nilに設定するだけです。
tableView.separatorColor = nil
IOSデバイスの色を確認するには、シミュレータでアプリを実行し、AppleのDigitalColor Meter(ユーティリティフォルダー内)を使用して、情報が必要な色にカーソルを合わせます。または、電話からスクリーングラブを実行し、プレビューでそれを開き、DigitalColor Meterを使用して色の値を読み取ります。
R:224 G:224 B:224
それがお役に立てば幸いです!
Swift 3.0.1では、このようなことができます
yourView.backgroundColor = UITableView().separatorColor
FWIW:
UIColor *defaultSeparatorColor = [UIColor colorWithRed:0.783922f green:0.783922f blue:0.8f alpha:1.0f];
これはiOS 9.-をシミュレートし、UITableView separatorColorがデフォルトで持っている浮動小数点値をログアウトすることがわかりました。私はこれが他の回答からの値のいずれにも一致することはありませんが、UITableView * tempTableの作成を介してseparatorColorが設定される他の回答のコードの結果を正確に一致させます。
Screenshot -> Photoshop -> Pick Color Tool -> RGB(227, 227, 229)
UITableView * tempTable = [[UITableView alloc] init];
[table setSeparatorColor:tempTable.separatorColor];
[table setSeparatorStyle:tempTable.separatorStyle];
table.backgroundView = tempTable.backgroundView;