【问题标题】:Change UIButton type programmatically以编程方式更改 UIButton 类型
【发布时间】:2011-12-27 18:50:32
【问题描述】:

我有一个用 IB 制作的 UIButton,它设置为“圆角矩形”。有一次,我想在代码中将类型更改为“自定义”,这可能吗?我看到可以在创建时设置类型,但没有看到以后是否可以更改它。

【问题讨论】:

  • 也许做一个新按钮,然后把它们换掉?

标签: objective-c cocoa-touch uibutton


【解决方案1】:

如果我没记错的话,不同的按钮类型由 UIButton 的不同(私有)子类表示。这就是为什么您只能在创建时设置类型而不能在创建之后设置。

【讨论】:

  • +1 UIButton.buttonType 是只读属性。如果您需要更改按钮类型,则需要创建一个新按钮。
  • 好的,我只创建了一个自定义类型的按钮,并添加了一个默认的自定义图像,之后我会以编程方式更改它。感谢您的帮助。
  • 那么如果我想创建一个 UIButton 子类那么如何在这个类中设置一个类型呢? buttonWithType: 不是这种情况的解决方案
【解决方案2】:

我不知道我是否会帮上大忙,但对我来说,这样做是有效的:

button = [UIButton buttonWithType:(UIButtonType)];

示例:

calculateButton = [UIButton buttonWithType: UIButtonTypeRoundedRect];

【讨论】:

  • 这将失去对已分配按钮的引用。
  • @PatrickBassut 这是一个有效的观点,我认为它可以修复我的 nil:ing 旧按钮(如果我错了,请纠正我)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-02-27
  • 2015-10-15
  • 1970-01-01
  • 2014-12-07
  • 2014-11-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多