禁用iOS

时间:2015-08-20 17:39:12

标签: ios objective-c

我相信大家都知道,当您在iOS中禁用按钮或滑块或其他内容时,控件会变暗一点,表示它已被禁用。我怎么能阻止这种情况发生?在禁用控件后,我尝试强制alpha返回1,但它不起作用。解决这个问题的最佳方法是什么?

谢谢!

编辑: 还有一种奇怪的行为,如果我直接在按钮或滑块上设置alpha它会重新变暗,但我的一个父视图有这个代码,它以某种方式绕过调光:

NSArray* childViews = [self.view subviews];
for ( UIView* childView in childViews )
{
    float alpha = 1;
    if ( self.expanded )
    {
        alpha = 0;
    }

    [childView setAlpha:alpha];
}

WTF?

2 个答案:

答案 0 :(得分:0)

我认为滑块等系统控件不可能是一个开关,但您可以尝试将NO属性设置为1970-01-01以达到类似的效果。

答案 1 :(得分:0)

如果您使用的是Interface Builder,则可以在Attributes Inspector(cmd + alt + 4)中配置禁用状态。如果将文本颜色设置为与默认状态的颜色相同的颜色(但不通过“默认颜色”但使用颜色选择器),则对于“禁用”状态,按钮看起来与默认状态。

但是你不应该禁用调光效果,因为这对你的应用程序的用户体验有害。