gpt4 book ai didi

iphone - UISegmentedControl 选定的段颜色

转载 作者:行者123 更新时间:2023-12-03 18:09:10 24 4
gpt4 key购买 nike

有没有办法在UISegmentedControl中自定义所选段的颜色?

我找到了 segmentedController.tintColor 属性,它可以让我自定义整个分段控件的颜色。问题是,当我为 tintColor 属性选择明亮的颜色时,选定的段几乎无法识别(其颜色几乎与分段控件的其余部分相同,因此很难区分选定和未选定的段)。所以我无法使用任何好的亮色来进行分段控制。解决方案是选定段颜色的一些单独的属性,但我找不到它。有人解决这个问题了吗?

最佳答案

这是将选定的段更改为任何 RGB 颜色的绝对最简单的方法。无需子类化或黑客攻击。

segmentedControl.segmentedControlStyle = UISegmentedControlStyleBar;

UIColor *newTintColor = [UIColor colorWithRed: 251/255.0 green:175/255.0 blue:93/255.0 alpha:1.0];
segmentedControl.tintColor = newTintColor;

UIColor *newSelectedTintColor = [UIColor colorWithRed: 0/255.0 green:175/255.0 blue:0/255.0 alpha:1.0];
[[[segmentedControl subviews] objectAtIndex:0] setTintColor:newSelectedTintColor];

此示例显示了重要步骤:

  1. 将控件样式设置为“StyleBar”,这是必需的去工作
  2. 设置未选择的颜色整个控件首先变为橙色
  3. 设置所选内容的颜色分段为绿色

注释:

  • 第 1 步和第 2 步可以在界面生成器,或代码为显示。然而步骤3只能完成在代码中
  • 设置的颜色值像这样的符号“123.0/255.0”是只是一种生成 RGB 值的方法脱颖而出,而不是标准化UIColor 所需的浮点值(如果你愿意,请忽略它)

关于iphone - UISegmentedControl 选定的段颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2270526/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com