一旦在情节提要中设置了 UIButton,iOS 9.2 就无法以编程方式更改它的标题

Posted

技术标签:

【中文标题】一旦在情节提要中设置了 UIButton,iOS 9.2 就无法以编程方式更改它的标题【英文标题】:iOS 9.2 unable to change title of a UIButton programmatically once it is set in storyboard 【发布时间】:2016-04-28 08:02:47 【问题描述】:

我遇到了一个奇怪的问题,我无法更改故事板中定义的 UIButton 的标题。该按钮嵌入到滚动视图中的堆栈视图中。按钮回调正确执行并触发断点,但无法更改标题。

我尝试了不同的状态,除了正常但似乎没有任何效果:

 [self.button setTitle:[NSString stringWithFormat:@"test %i",1] forState:UIControlStateNormal];
[self.button setNeedsLayout];
[self.button layoutIfNeeded];

【问题讨论】:

【参考方案1】:

:( 原来我将按钮从一个视图控制器复制到另一个(身份检查器中的相同视图控制器类),并且所有出口都显示为正确。但是,在这种情况下它们似乎被窃听了。手动删除每个按钮回调和IBOutlet并重新连接解决了这个问题。

澄清:要查看您是否遇到同样的问题,请设置断点并检查按钮引用是否为零。如果它是 nil 并且您看到在故事板中设置了插座,请删除插座连接并重新连接。

【讨论】:

+1 以编程方式编写所有 UI 代码并永远告别 IB 的理由...... :D 等到这发生在你身上,在截止日期前发布非常重要的事情,你永远不会回去

以上是关于一旦在情节提要中设置了 UIButton,iOS 9.2 就无法以编程方式更改它的标题的主要内容,如果未能解决你的问题,请参考以下文章

XCODE:UIView 背景没有出现在屏幕上,即使我在情节提要中设置了颜色并以编程方式

UIButton 动作

iOS:如何以编程方式将视图添加到情节提要视图

iOS8 在情节提要中设置弹出框大小

如何在没有情节提要的 Xamarin.iOS UIViewController 中设置 RestorationClass?

ios8/xcode6.1:在情节提要中设置时在运行时忽略自定义字体