当按钮变为可用时,iOS会更改自定义栏按钮文本颜色

时间:2015-04-01 20:41:08

标签: ios uibarbuttonitem

所以我有一个注册页面(以及通过注册过程实现的其他多个地方),它有一个Next按钮,设置为拖动到导航栏上的自定义UIButton。当用户输入他们的注册信息时,我想将文本的颜色从灰色不可用时更改为自定义绿色。我已经阅读了其他一些帖子,例如this one,但他们没有任何帮助。我想我正在做他们告诉我正确的事情,但我得到的结果与我想要的不同。现在我的代码看起来像这样:

-(void)checkCompletion
{
    if( emailEntered && passwordEntered && [_password.text length] >= 5)
    {
        [_nextBarButtonItem setEnabled:YES];
        [_nextButton setEnabled:YES];
        [_nextButton.titleLabel setTextColor:[UIColor customGreen]];
        [_nextButton setTintColor:[UIColor customGreen]];
        [_nextBarButtonItem setTintColor:[UIColor customGreen]];
        nextAvailable = YES;
    }
    else
    {
        nextAvailable = NO;
    }
}

_nextBarButtonItem是barButtonItem,_nextButton是我拖动到导航栏上的UIButton,它位于层次结构中的_nextBarBUttonItem下面。 customGreen是一个类别,其头文件#include' d进入我的prefix.pch,因为我在整个应用中使用了颜色。当文本字段返回时和编辑密码时调用此函数,因此如果用户不想先关闭键盘,我可以在按下返回键之前使按钮可用。

我尝试了几种方法,例如在故事板上将按钮设置为customGreen,并在层次结构中的barButtonItem下禁用barButtonItem和按钮本身,希望它会将其灰显,但按钮仍为绿色,只是无法按下它。我在故事板上将按钮设为灰色,然后调用此功能,但文本最终变为白色而不是绿色。我尝试在设置时明确定义颜色,但我得到了相同的结果。我不希望我的后退按钮变为绿色,只有下一个按钮可以按下。

任何想法我做错了什么?

0 个答案:

没有答案