以编程方式设置 UIButton 的 buttonType [重复]

Posted

技术标签:

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

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

【问题讨论】:

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

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

UIButton *btn = [UIButton buttonWithType:UIButtonTypeCustom];

【讨论】:

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

.buttonType 设置后无法更改。

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

【讨论】:

显然有一个私有的setter方法,为什么这样的东西是私有的谁知道。感谢您对 2 个按钮的想法,这就是我要做的。 @Jon:这是私有的,因为设置它不会将深色信息按钮转换为浅色按钮。

以上是关于以编程方式设置 UIButton 的 buttonType [重复]的主要内容,如果未能解决你的问题,请参考以下文章

根据条件以编程方式拉伸 UIButton 宽度

以编程方式添加带有自动布局的uibutton

uibutton与图像

以编程方式创建按钮并设置背景图像

如何以编程方式突出显示 UIButton?

iPad - 以编程方式将文本设置为按钮