我已经将UISegmentedControl作为交换视图控制器的导航栏的一部分 - 我需要能够在各种条件下禁用某些段。问题是iOS(在我的情况下是7)在段被禁用时搞乱了段字体 - 而不是像往常一样将alpha改为0.5,它将字体颜色改为深灰色,因此在黑条上几乎不可读。我试图创建一个解决方法setEnable,它只会更改aplha但是只要我将setUserInteractionEnabled用于NO,iOS就会再次自动更改字体颜色。
有关如何解决此问题的任何想法?
答案 0 :(得分:3)
您需要为禁用状态设置标题属性:
NSDictionary *attrs = @{ UITextAttributeTextColor : [UIColor purpleColor] };
[segmentedControl setTitleTextAttributes:attrs forState:UIControlStateDisabled];
显然,您应该在禁用片段时将紫色替换为您想要的颜色。