更改UISwitch的标签

时间:2009-06-11 13:26:18

标签: ios

我必须将UISwitch的标签从ON-OFF更改为YES-NO。

我希望这个方法在单独的类中实现,然后由其他类访问。​​

我试图实现烹饪书中提供的片段,但没有成功

2 个答案:

答案 0 :(得分:1)

您可以使用onoff

的图片
@property(nonatomic, retain) UIImage *offImage;
@property(nonatomic, retain) UIImage *onImage;

图片尺寸为77 * 27

答案 1 :(得分:1)

UISwitch使用图片进行绘图。要更改UISwitch的文字,您必须设置onImage的{​​{1}}和offImage属性,才能将图片与自定义文字一起使用。这可以直接在UISwitch实例上完成,也可以使用UISwitch在您应用中的所有UIAppearance个实例中设置自定义图片:

UISwitch

不幸的是,在iOS 7或更高版本中,为UISwitch设置自定义开启和关闭图像功能不起作用。来自documentation

  

在iOS 7中,此属性无效。   在iOS 6中,此图像表示交换机的内部内容。您指定的图像与开关的圆形边框和拇指合成,以创建最终外观。

并未将其标记为已弃用。不幸的是,在iOS 8中,情况似乎仍然如此。自定义[[UISwitch appearance] setOnImage:onImage]; [[UISwitch appearance] setOffImage:offImage]; 的颜色仍然有效,但使用自定义图像则不然。要自定义开关的图像(以及文本),您必须使用自定义控件类。