大家好,这是我的第一个问题。
如何更改UISwitch按钮的颜色,当它出现在模拟器中时不应该在On
但在Off
中我希望看到白色,当活动开关变为绿色时。
对不起我的英语不好。
谢谢。
答案 0 :(得分:5)
您可以访问UISwitchView的onTintColor和tintColor属性。
@property(nonatomic, retain) UIColor *onTintColor
@property(nonatomic, retain) UIColor *tintColor
初始化开关时,将onTintColor设置为On值所需的颜色,将tintColor设置为Off值。 例如在UIViewController中:
UISwitch *theSwitch = [[UISwitch alloc] initWithFrame:CGRectMake(0.0, 0.0, 41.0, 30.0)];
// on color
theSwitch.onTintColor = [UIColor blueColor];
//off color
theSwitch.tintColor = [UIColor redColor];
[self.view addSubview:theSwitch];
答案 1 :(得分:1)
创建一个用于更改开关值的处理程序(参见下文)。另外,请不要忘记设置初始颜色,具体取决于开关的状态。
- (void)onFlipSwitch:(UISwitch *)aSwitch {
if(aSwitch.on) {
aSwitch.backgroundColor = [UIColor greenColor];
}
else {
aSwitch.backgroundColor = [UIColor whiteColor];
}
}