我正在使用适用于iOS 8的自定义键盘。默认情况下,它具有灰色背景色。
如果要为其视图背景设置一些颜色 - 一切正常,但我怎样才能使其透明? (UIColor.clearColor()
无效)
答案 0 :(得分:0)
您是否使用xib文件加载视图? 或者你是否以编程方式完成了所有工作?
我使用xib文件,我将故事中的背景颜色设置为默认的空白。 然后在viewDidLoad之前我将它设置为clearcolor,这是有效的。我的背景与默认键盘相同。
答案 1 :(得分:0)
我还没有用键盘试过,但是你可以设置背景PNG吗?如果是这样,请创建一个明确的1px xpp PNG(保持PNG中的透明度)。将其用作背景图像。似乎SDK中存在导致此问题的错误。
答案 2 :(得分:0)
很遗憾,您无法将键盘的背景显示为.clear
(透明),但可以将其更改为其他颜色。进一步说明:
请记住,在使用笔尖时,有2个视图-笔尖的视图和ViewController
的视图。您可以将笔尖的背景更改为.clear
,但这只是显示ViewController
的视图(在本例中为KeyboardViewController
)
override func viewDidLoad() {
super.viewDidLoad()
let keyboardNib = UINib(nibName: "KeyboardView", bundle: nil)
let keyboardView = keyboardNib.instantiate(withOwner: self, options: nil) [0] as? UIView
view.backgroundColor = .red
keyboardView.backgroundColor = .clear
}
当您希望笔尖的视图与ViewController
的视图匹配时(keyboardView.backgroundColor = view.backgroundColor
也是一样),上面的方法才真正有用。
如果您只想更改笔尖的颜色,则可以将笔尖的背景颜色设置为所需的任何颜色,因为它位于keyboardViewController
视图的前面。
override func viewDidLoad() {
super.viewDidLoad()
let keyboardNib = UINib(nibName: "KeyboardView", bundle: nil)
let keyboardView = keyboardNib.instantiate(withOwner: self, options: nil) [0] as? UIView
keyboardView.backgroundColor = .red
}