如何更改UISwitch默认颜色(蓝色)

2020/12/05 17:11 · ios ·  · 0评论

如何更改UISwitch的默认颜色(蓝色)?

我认为您正在寻找的是这样的东西

UISwitch *testSwitch; //just something I made up
[testSwitch setOnTintColor:[UIColor greenColor]];

在Xcode 5和iOS 7中,它现在位于属性检查器中:

在此处输入图片说明

更改“打开色调”将在按钮打开时改变其颜色。

在此处输入图片说明

我希望这就是您想要的!即使您在三年前发布了该问题。

斯威夫特3
斯威夫特4

可行的解决方案

var switcher = UISwitch()
switcher.onTintColor = .green
switcher.tintColor = .green

在iOS 5之前的版本中,如果您未编写自己的自定义控件UISwitch(也许使用)UISegmentedControl,则Apple不允许您更改标准颜色UISwitch

有一个私有属性setAlternateColor: YES,它将颜色更改为橙​​色,您需要为UISwitch该类创建一个类别,但是在Apple审核过程中将不会批准该类别

以下是UISwitch在iOS 3.0-4.1中使用的一些自定义项目:

  1. http://osiris.laya.com/projects/rcswitch/
  2. http://www.alexcurylo.com/blog/2010/07/30/custom-uiswitch/
  3. StackOverflow分析工具:https://stackoverflow.com/a/5088099/171206 (使用UISegmentedControl

在iOS 5中引入,UISwitch现在具有onTintColor属性。

[mySwitch setOnTintColor: [UIColor blackColor]];

斯威夫特3:

yourSwitch.onTintColor = .red

最后,在iOS5中,您可以使用onTintColor属性更改开关的颜色。

UISwitch *s = [[UISwitch alloc] initWithFrame:CGRectMake(100, 100, 100, 100)];
s.on = YES;
s.onTintColor = [UIColor redColor];
[self.view addSubview:s];
[s release];

产生这个

在此处输入图片说明

希望对您有所帮助!

为特定的UISwitch设置颜色:

var switcher = UISwitch()
switcher.onTintColor = .red
switcher.tintColor = .red

为您的应用设置色彩:

let switchApperence = UISwitch.appearance()
switchApperence.tintColor = .red
switchApperence.onTintColor = .red
本文地址:http://ios.askforanswer.com/ruhegenggaiuiswitchmorenyanselanse.html
文章标签: ,   ,   ,  
版权声明:本文为原创文章,版权归 admin 所有,欢迎分享本文,转载请保留出处!

文件下载

老薛主机终身7折优惠码boke112

上一篇:
下一篇:

评论已关闭!