UISwitchがOFFの時の背景色カスタマイズ方法

More than 3 years have passed since last update.

UISwitchにはcolorを設定するプロパティが3つあります。

UISwitch *sw = [UISwitch new];

sw.tintColor = [UIColor blueColor];
sw.onTintColor = [UIColor redColor];
sw.thumbTintColor = [UIColor greenColor];

offの時には青くて、onの時には赤くて、ツマミが緑のSwitchができました。

IMG_4728.PNG

IMG_4729.PNG

…offのときの背景色、白い。

黒のほうがいいので、backgroundColorを設定します。

sw.backgroundColor = [UIColor blackColor];

IMG_4730.PNG

IMG_4731.PNG

!!?

こんなときはlayer.cornerRadiusを設定しましょう。

sw.layer.cornerRadius = sw.frame.size.height/2;

IMG_4732.PNG

IMG_4733.PNG

できあがり。