改变iPhone应用程序中的开关颜色

Ank*_*han 17 iphone uiswitch

UISwitch在iOS 3中使用在我的应用程序中制作一个开关元素.它的默认颜色设置为蓝色,但我想将其颜色更改为棕色(除了一些讨厌的谣言之外,没有通过谷歌获得线索).

如何为UISwitchiOS 3中的元素选择不同的颜色?

Fry*_*Fry 43

最后,使用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];
Run Code Online (Sandbox Code Playgroud)

产生这个

在此输入图像描述

即使是很久以前,我希望这有帮助!

  • @AnkitSachan:根据社区规则,如果该问题适用于您,则应将此问题标记为已接受.对我和其他许多人来说,这是一个有效的解决方案 (2认同)

hea*_*uck 5

对于Swift 3中所有UISwitch元素的全局更改,请使用外观代理:

UISwitch.appearance().onTintColor = UIColor.brown
Run Code Online (Sandbox Code Playgroud)

在AppDelegate application:didFinishLaunchingWithOptions:方法下。


dla*_*lin -5

对于现代 iOS XX 版本,请跳过答案,因为它最近的相关性为零。\n还在这里吗?\n在 iOS 3 中。你不能。但你知道\xe2\x80\xa6 人们登陆这里是因为排名,并且评论包含其他版本和内容所以\xe2\x80\xa6

\n\n

第五个 iOS 版本现在允许使用记录的方式来执行此操作:使用属性onTintColor.

\n\n
UISwitch *s = [[UISwitch alloc] initWithFrame:CGRectMake(100, 100, 100, 100)];\ns.on = YES;\ns.onTintColor = [UIColor redColor];\n[self.view addSubview:s];\n[s release];\n
Run Code Online (Sandbox Code Playgroud)\n\n

产生这个

\n\n

这是一个看起来有颜色的东西

\n\n

编辑:我不知道为什么有人会通过并回滚答案以将其限制为仅针对问题,而不对所有答案执行相同的操作。

\n\n

编辑更多: \n在 iOS 3 中,您必须使用一些未记录的功能。这里曾经有一个关于此的链接,但它坏了。如果您这样做,您的应用程序可能会因为更改颜色而被拒绝。

\n\n

它是从这个开始的,这应该足以让你在其他地方找到它:

\n\n
UISwitch *aSwitch = [[UISwitch alloc] initWithFrame:someRectangle];\n[aSwitch setAlternateColors:YES];\n//Do something with aSwitch\n[aSwitch release];\n
Run Code Online (Sandbox Code Playgroud)\n\n

我不能推荐它。结果这并不受欢迎。

\n