在iOS7上更改UISwitch的onTintColor?

Mer*_*ran 3 uiswitch ios ios7

默认onTintColor为绿色,因为我在iOS7上看到它,但我希望它是另一种颜色.

[myUISwitch setOnTintColor:[UIColor customColor]];
Run Code Online (Sandbox Code Playgroud)

不起作用.on/offImages文档说,对iOS7没有影响.为什么它不起作用?我怎样才能改变它onTintColor

Mer*_*ran 19

UISwitch *switch = [UISwitch alloc] init];
[switch setOnTintColor:[UIColor customColor]];
[myView addSubview:switch];
Run Code Online (Sandbox Code Playgroud)

不起作用.但

UISwitch *switch = [UISwitch alloc] init];
[myView addSubview:switch];
[switch setOnTintColor:[UIColor customColor]];
Run Code Online (Sandbox Code Playgroud)

作品.除非可见,否则色调颜色不会改变.有人解释一下吗?

  • 调用alloc和init之后,在显示开关并调用viewDidLoad:之前,开关的视图层次结构尚未完全初始化。 (2认同)