5
我今天有点困惑,今天发现以下内容在尝试更改UIButton
上显示的文本时不起作用。为UIButton设置titleLabel
// 001
[[[self button] titleLabel] setText:@"Peanuts"];
我想我知道为什么,但我只是想确认我的想法。 001确实设置了titleLabel文本属性,但是作为其UILabel
(UIButton
的子视图),它不会导致UI被重绘。这会导致UILabel
文本属性的内部更改,但可惜在UI中没有视觉更改。
// 002
[[self button]setTitle:@"Peanuts" forState:UIControlStateNormal];
这似乎是该方法的setTitle:forState是要走的正确途径,它有要求一国的额外开销但并调用UI重绘,因为它直接呼吁UIButton
。我的问题是,002是做这件事的正确方法,除非我做了完全错误的事情,否则看起来是这样。
谢谢,非常感谢。 – fuzzygoat