2012-01-12 75 views
1

我的应用程序有一些非常大的按钮部分(640x130,230x150等)。我需要的是有一种方法来更新按钮的不同部分,并使用不同的文本。最初,我认为在我的代码中我可以创建各种UILabel,然后将它们作为子视图添加到我的按钮中。但是,只要我尝试添加一个UILabel作为子视图的按钮,我的应用程序崩溃。如何为UIButton创建动态覆盖?

什么是最简单的方法来创建一个按钮的覆盖,我可以完全布局自己,而不会阻止按钮水龙头使用覆盖控件感兴趣?

我想有多种方法可以解决这个问题。然而,对于我的情况最好的解决方案应该使用最少的代码行(我有很多这种类型的按钮),我希望能够继续在IB中使用某种形式的可配置按钮。

我不反对继承UIButton,但是,如果我这样做,我希望能够在IB中使用它。我从来没有为这种情况创建自定义的UIView,所以我需要帮助定义这种类型的子类,以便它能够在IB中正确工作。

回答

3

您需要将子视图添加到包含视图 - 而不是按钮。为确保不会干扰按钮按下,请务必将其设置为:

[myCustomTextOverlay setUserInteractionEnabled:NO];