UIButton 不会显示标题

Posted

技术标签:

【中文标题】UIButton 不会显示标题【英文标题】:UIButton wont show title 【发布时间】:2012-06-26 00:27:29 【问题描述】:

我有一个用

设置的 UIbutton 标题
[[buttons objectAtIndex:selectedButtonTag] setTitle:file forState:UIControlStateNormal];

由于某种原因,这不会强制按钮更改标题。

当我用

打印按钮的标题时
UIButton *button = [buttons objectAtIndex:selectedButtonTag];
NSLog(@"button text is %@",button.titleLabel.text);

它实际上打印了之前设置的标题。

UI 上是否有一些刷新调用,或者为什么按钮不显示标题?

【问题讨论】:

【参考方案1】:

致有相同问题并已检查所有其他选项的任何人。确保您用于 UIButton 的 png 设置在背景图像字段中,而不是图像字段中。

【讨论】:

我有同样的问题,但我的按钮没有 png...所有这些问题都包括背景图片,但不是我的... @Morkrom - 你到底是什么意思? 太棒了.. 工作就像一个魅力。【参考方案2】:

您必须将按钮的标题设置为正常和突出显示状态也请确保设置为按钮的图像设置为其背景图像而不是图像

【讨论】:

【参考方案3】:

如果您的按钮被选中或突出显示并且您专门为这些状态之一设置了标题,它将不会显示 UIControlStateNormal 标题。

如果是这种情况,我建议避免将标题设置为正常状态以外的任何内容,或者为按钮的所有潜在状态设置标题。

【讨论】:

它是一个在 IB 中链接的自定义 UIButton 插座。该按钮的图像设置为 png。除此之外没有别的了。所有状态都保留为默认值。 蹩脚的问题。 png 被设置为图像,而不是背景图像。 z 订单问题。我应该删除这个问题吗? 啊!不,我不会删除它。只需自己回答并接受您的回答;我以前遇到过你的错误,有人可能会觉得它很有用。 虽然,您的回答并没有解释为什么 titleLabel.text 没有更新。你可能需要一个 layoutIfNeeded 调用。 正在更新。但是在image属性上设置的png后面。【参考方案4】:

这样我们所有人都不必在谷歌上搜索如何设置背景图片:)

[myButton setBackgroundImage:[UIImage imageNamed:@"myImage.png"]
                    forState:UIControlStateNormal];

【讨论】:

以上是关于UIButton 不会显示标题的主要内容,如果未能解决你的问题,请参考以下文章

UIButton 无法正确显示

UIButton 的标题标签未显示

UIButton 高亮设置不会粘住

使用普通/高亮图像创建自定义 UIButton

UIButton 显示 BackgroundImage、Image 和 Title

用户单击时如何禁用 UIButton 的突出显示