【问题标题】:set UIButton's buttonType programmatically [duplicate]以编程方式设置 UIButton 的 buttonType [重复]
【发布时间】:2010-06-20 16:38:09
【问题描述】:

我在 IB 中添加了一个 UIButton,但是此按钮后面的视图改变了颜色,我需要在 InfoDarkInfoLight 之间切换按钮的类型>。奇怪的是,buttonType 属性是只读的。那么如何在明暗信息按钮之间切换呢?

【问题讨论】:

  • 这不是重复的。这个问题是关于在实例化后更改按钮类型。引用的问题是关于如何在代码中实例化按钮。请删除重复项。
  • swift 5.2:self.btnFont.buttonType = UIButton.ButtonType.system

标签: iphone objective-c uibutton programmatically-created


【解决方案1】:

您不能设置 buttonType 只读属性,使用下面可能会有所帮助:

UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom];

【讨论】:

  • 什么时候重写 UIButton 类? (我的意思是子类)
  • 在 swift 中,如果你使用的是自定义类,那么让 button = MyCustomeClass.init(type: .custom)
【解决方案2】:

.buttonType 设置后无法更改。

您可以准备两个按钮,并根据背景颜色隐藏其中一个。

【讨论】:

  • 显然有一个私有的setter方法,为什么这样的东西是私有的谁知道。感谢您对 2 个按钮的想法,这就是我要做的。
  • @Jon:这是私有的,因为设置它不会将深色信息按钮转换为浅色按钮。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-11-20
  • 2012-07-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多