UIButton上的文本更改不会粘

Joe*_*ker 19 cocoa-touch interface-builder uibutton ipad ios

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

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

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

我觉得我好笨.有人可以指点我正确的方向吗?

tas*_*oor 52

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

[stopButton setTitle:@"RTN TO ZERO" forState:UIControlStateNormal];
Run Code Online (Sandbox Code Playgroud)

而不是直接改变使用方法的text属性来设置不同状态的标题.请查看手册以了解可用状态的详细信息.titleLabelsetTitle:forState:

  • 就像一个旁注; 如果您在IB中使用属性文本,则此方法不起作用.你必须使用setAttributedTitle:forState:. (4认同)