【问题标题】:UISegmentedControl disable segment without change of fontUISegmentedControl 禁用段而不更改字体
【发布时间】:2013-12-06 16:12:19
【问题描述】:

我将 UISegmentedControl 作为导航栏的一部分,用于交换视图控制器 - 我需要能够在各种条件下禁用某些段。问题是,当段被禁用时,iOS(在我的情况下为 7)会弄乱段字体 - 而不是像往常一样将 alpha 更改为 0.5,而是将字体颜色更改为深灰色,因此在黑条上几乎不可读。我尝试创建解决方法 setEnable,它只会更改 aplha,但是一旦我将 setUserInteractionEnabled 设置为 NO,iOS 将再次自动更改字体颜色。

任何想法如何解决这个问题?

【问题讨论】:

    标签: fonts ios7 uisegmentedcontrol segment


    【解决方案1】:

    需要设置禁用状态的title属性:

    NSDictionary *attrs = @{ UITextAttributeTextColor : [UIColor purpleColor] };
    [segmentedControl setTitleTextAttributes:attrs forState:UIControlStateDisabled];
    

    显然你应该在段被禁用时用你想要的颜色替换紫色。

    【讨论】:

    • 有没有类似的方法给禁用段着色?
    猜你喜欢
    • 2012-05-12
    • 2011-01-17
    • 1970-01-01
    • 1970-01-01
    • 2016-07-28
    • 2012-02-20
    • 2011-09-02
    • 2016-11-22
    • 2012-01-15
    相关资源
    最近更新 更多