UIButton上的文本更改不会粘

时间:2011-04-07 10:05:23

标签: cocoa-touch ios ipad interface-builder uibutton

我的视图中有一个说“停止”的UIButton。当按下时,它应该(当然,停止播放)并将其标签更改为“RTN TO ZERO”。这很简单:

stopButton.titleLabel.text = @"RTN TO ZERO";

但是,更改仅在瞬间出现。它不坚持。我假设按钮(按下时突出显示)接受并显示新标签,但不知何故,突出显示仅在稍后反转,将按钮恢复到按下之前的状态,而不是标记文本更改。 该按钮在IB中构思,而不是以编程方式构思。

我觉得自己很蠢。有人可以指出我正确的方向吗?

2 个答案:

答案 0 :(得分:52)

在按钮处理程序中,试试这个:

[stopButton setTitle:@"RTN TO ZERO" forState:UIControlStateNormal];

而不是直接更改text的{​​{1}}属性,使用titleLabel方法将标题设置为不同的状态。请查看manual以了解可用状态的详细信息。

答案 1 :(得分:3)

Swift版本

setAttributedTitle:for

JCombobox用于属性文字。有关如何在Swift中创建属性字符串,请参阅here