2

@IBDesignable背景色を白に設定し、部分的に低いアルファを使用して、一連の「半透明」UI 要素を作成しました。

これは機能しますUIViewUIButton、背景はクリアのままで、テキストの色は実行時に白として正しく表示されますが、Xcode (IB) ではデフォルトの青として表示されます。

ここで何が間違っていますか?で機能する場合UIView、同じコードが で機能しない理由がわかりませんUIButton

import UIKit

@IBDesignable
class TranslucentButton: UIButton {
    override func drawRect(rect: CGRect) {
        backgroundColor = UIColor(red: 1, green: 1, blue: 1, alpha: 0.1)
        setTitleColor(UIColor.whiteColor(), forState: UIControlState.Normal)

        layer.cornerRadius = 4
        layer.masksToBounds = true
        layer.borderColor = UIColor.whiteColor().CGColor
        layer.borderWidth = 1
    }
}

@IBDesignable
class TransulucentUIView: UIView {
    override func drawRect(rect: CGRect) {
        backgroundColor = UIColor(red: 1, green: 1, blue: 1, alpha: 0.1)

        layer.cornerRadius = 4
        layer.masksToBounds = true
        layer.borderColor = UIColor.whiteColor().CGColor
        layer.borderWidth = 1
    }
}
4

0 に答える 0