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