标签在按钮上,如何突出显示iOS7按钮上的文字?

时间:2014-04-01 18:05:56

标签: ios objective-c ios7 uibutton uilabel

我有一个按钮,并在故事板中的按钮上放置了多个标签。对于按钮,我指定了默认状态和突出显示状态。同样对于标签我在故事板中指定了高亮颜色。

但是按下按钮时,标签的字体颜色不会变为白色。我错过了什么吗?我想在storyboard中配置此行为,而不是以编程方式。这可能吗?或者我是否必须创建自定义按钮?

1 个答案:

答案 0 :(得分:1)

问题是UILabel 没有获取触摸事件,因为它只是按设计处理触摸事件,它只是用于显示文本。

您可能想要创建UIButton的子类,但这不是一个好主意,因为它是一种集群类。

最好的方法是通过继承UIControlUIView来创建自定义按钮类。使用后者,您可以通过将其类更改为其中一个按钮子类,将其添加到故事板中。在子类中,使用initWithCoder:方法进行自定义。

如果您决定选择UIControl这样做的方式。查看setHighlighted:方法:

- (void)setHighlighted:(BOOL)highlighted
{
    [super setHighlighted: highlighted];
    // Highlight your labels here
}

有用的链接:UIControl Class Reference