hun*_*ley 1 objective-c swift tvos
我有一个针对tvOS的小测试应用程序 - 带有两个按钮的白色背景.按钮是标准按钮UIButton,除了将标题文本和设置设置titleColor为黑色外没有自定义.
UIButton当他们变得专注时,我不会收到阴影(或任何动画).如果我用UITextFields 替换它们,它们会按预期获得默认的阴影和动画.我可以通过添加目标并在选择时打印到控制台来确认按钮是否已成为焦点.
知道发生了什么事吗?Apple的文档,本文和这个答案都表明UIButton应该像其他可聚焦元素一样自动接收默认的焦点动画.这是一个我错过的错误吗?
相关代码:
override func viewDidLoad() {
super.viewDidLoad()
view.backgroundColor = UIColor.whiteColor()
let button = UIButton()
button.setTitle("Button", forState: .Normal)
button.setTitleColor(UIColor.blackColor(), forState: .Normal)
button.frame = CGRectMake(500, 500, 300, 100)
view.addSubview(button)
let button2 = UIButton()
button2.setTitle("Button2", forState: .Normal)
button2.setTitleColor(UIColor.blackColor(), forState: .Normal)
button2.frame = CGRectMake(900, 500, 300, 100)
view.addSubview(button2)
}
Run Code Online (Sandbox Code Playgroud)
编辑:这只在UIButton以编程方式添加s 时发生- 如果我在Interface Builder中添加它们,它们正常运行.
调用UIButton()初始化程序会为您提供一个"自定义"按钮,当您真正想要的是一个"系统"按钮时,如下所示:
let button = UIButton(type: .System)
Run Code Online (Sandbox Code Playgroud)
自定义按钮根本没有任何内置外观,而系统按钮则可以.
| 归档时间: |
|
| 查看次数: |
1034 次 |
| 最近记录: |