Ios 正在尝试更改UISwitch的背景图像
代码: 我试图在UISwitch被更改时更改其背景图像。 似乎未设置背景图像Ios 正在尝试更改UISwitch的背景图像,ios,swift,uiimage,uiswitch,Ios,Swift,Uiimage,Uiswitch,代码: 我试图在UISwitch被更改时更改其背景图像。 似乎未设置背景图像 我的代码有什么问题?onImage和ofimage属性自iOS7以来根据苹果文档没有任何效果 尝试创建一个UIButton,并根据selected:Bool属性在此按钮上设置一个图像,使其行为类似于开关 按下按钮时,使sender.selected=!发件人。选中,然后刷新图像。您将有一个自定义开关 根据Apple文档,自iOS7以来,onImage和offImage属性均无效 let switchTerms = U
我的代码有什么问题?
onImage
和ofimage
属性自iOS7以来根据苹果文档没有任何效果
尝试创建一个UIButton,并根据selected:Bool
属性在此按钮上设置一个图像,使其行为类似于开关
按下按钮时,使
sender.selected=!发件人。选中
,然后刷新图像。您将有一个自定义开关 根据Apple文档,自iOS7以来,onImage和offImage属性均无效
let switchTerms = UISwitch(frame:CGRectMake(XPos, YPos, Width, Height))
switchTerms.addTarget(self, action: "switchTermsAction:", forControlEvents: .ValueChanged)
switchTerms.onImage = UIImage(named:"SIGN-UP-toggle-Active.png")
scrollSignUp!.addSubview(switchTerms);
func switchTermsAction(sender:UISwitch){
if sender.on{
sender.onImage = UIImage(named:"SIGN-UP-toggle-Active.png")
}
else{
sender.offImage = UIImage(named:"SIGN-UP-toggle-DeActive.png")
}
}
尝试创建一个UIButton,并根据selected:Bool
属性在此按钮上设置一个图像,使其行为类似于开关
按下按钮时,使sender.selected=!发件人。选中
,然后刷新图像。您将有一个自定义开关
let switchTerms = UISwitch(frame:CGRectMake(XPos, YPos, Width, Height))
switchTerms.addTarget(self, action: "switchTermsAction:", forControlEvents: .ValueChanged)
switchTerms.onImage = UIImage(named:"SIGN-UP-toggle-Active.png")
scrollSignUp!.addSubview(switchTerms);
func switchTermsAction(sender:UISwitch){
if sender.on{
sender.onImage = UIImage(named:"SIGN-UP-toggle-Active.png")
}
else{
sender.offImage = UIImage(named:"SIGN-UP-toggle-DeActive.png")
}
}
斯威夫特:
@property (weak, nonatomic) IBOutlet UIImageView *genderSwitchBackgroundImageView;
@property (weak, nonatomic) IBOutlet UISwitch *genderSwitch;
...
- (void)viewDidLoad {
[super viewDidLoad];
self.genderSwitch.onTintColor = [UIColor clearColor];
self.genderSwitch.tintColor = [UIColor clearColor];
[self genderSwitchValueChanged];
}
- (IBAction)genderSwitchValueChanged {
self.genderSwitchBackgroundImageView.image = [UIImage imageNamed:(self.genderSwitch.isOn ? @"toggle_male" : @"toggle_female")];
}
斯威夫特:
@property (weak, nonatomic) IBOutlet UIImageView *genderSwitchBackgroundImageView;
@property (weak, nonatomic) IBOutlet UISwitch *genderSwitch;
...
- (void)viewDidLoad {
[super viewDidLoad];
self.genderSwitch.onTintColor = [UIColor clearColor];
self.genderSwitch.tintColor = [UIColor clearColor];
[self genderSwitchValueChanged];
}
- (IBAction)genderSwitchValueChanged {
self.genderSwitchBackgroundImageView.image = [UIImage imageNamed:(self.genderSwitch.isOn ? @"toggle_male" : @"toggle_female")];
}
麦克斯,你是说你把图像放在开关下面了?所以图像大小与普通开关相同?@markmoeykens-yepYeah,这似乎可行。将高31、宽51的背景放在开关后面。看起来很好用。希望有一种更优雅的方式。它确实有效)我在实际项目中使用了这种方法。我认为这比“按按钮接近”要好Max,你是说你把图像放在开关下面?所以图像大小与普通开关相同?@markmoeykens-yepYeah,这似乎可行。将高31、宽51的背景放在开关后面。看起来很好用。希望有一种更优雅的方式。它确实有效)我在实际项目中使用了这种方法。我认为这比“按按钮的方法”要好