gpt4 book ai didi

ios - 以编程方式更改其标题在 IB 中设置为属性的 UIButton 的标题

转载 作者:IT王子 更新时间:2023-10-29 08:04:17 26 4
gpt4 key购买 nike

我在使用前更改了 UIButton 的标题:

- (void)setTitle:(NSString *)title forState:(UIControlState)state

但是I've run into a situation我正在使用的 UIButton 有一个多行标题,并且只有在 IB 中从“plain”更改为“attributed”时才会正确居中文本。以这种方式更改标题时,通常的 setTitle: forState: 方法不再更新按钮。

如何更改 UIButton属性标题?

澄清一下,这样您就不会认为我只是犯了一个愚蠢的错误,我使用调试器查看了 UIButton 的属性并记录了

- (NSString *)titleForState:(UIControlState)state

使用后

- (void)setTitle:(NSString *)title forState:(UIControlState)state

设置它返回刚刚设置的值。问题是只要在 IB 中将标题设置为 attributed,它就不会更改按钮的外观。只需将其更改为plain,我的代码就可以正常工作。但这不是上面链接中描述的解决方案。

最佳答案

属性标题通过

获得
- (NSAttributedString *)attributedTitleForState:(UIControlState)state

并通过

设置
- (void)setAttributedTitle:(NSAttributedString *)title forState:(UIControlState)state

格式化 NSAttributedString 对象有点复杂,但将其设置为 nil 将清除标题,这正是我需要的。

关于ios - 以编程方式更改其标题在 IB 中设置为属性的 UIButton 的标题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12652198/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com