我总是遇到这个问题而且从来没有得到答案。当我以编程方式创建UIButton并添加到UI时,然后当您触摸按钮时, UI 上的状态未被更改为突出显示/向下与该按钮交互的结果。
另一件事,“有时”UIButtons在通过界面构建器添加时,它们可以正常工作,当您触摸它们时,您可以看到UI中的状态更改为高亮显示/向下。
知道为什么会这样吗?
答案 0 :(得分:1)
如果您的按钮类型是自定义的,您必须为突出显示的状态设置图像/颜色,以区别状态更改(从正常到突出显示)。
如果您的按钮类型是系统,您将看到状态更改效果而不更改图像/颜色。
答案 1 :(得分:0)
我认为您注意到UIButton与Custom vs. System之间的区别。
我把这个操场放在一起,以显示差异。
import UIKit
import XCPlayground
let view = UIView(frame: CGRect(x: 0, y: 0, width: 400, height: 400))
view.backgroundColor = .whiteColor()
let button1 = UIButton(type: .System)
button1.frame = CGRect(x: 0, y: 0, width: 200, height: 50)
button1.setTitle("One", forState: .Normal)
button1.backgroundColor = .blackColor()
view.addSubview(button1)
let button2 = UIButton()
button2.frame = CGRect(x: 0, y: 60, width: 200, height: 50)
button2.setTitle("Two", forState: .Normal)
button2.backgroundColor = .grayColor()
view.addSubview(button2)
XCPlaygroundPage.currentPage.liveView = view
请发布您的程序设计按钮代码,以便我们进一步调查