2017-11-16 13 views
0

私はストーリーボードで「Show Touch Highlight」を有効にしたUIButtonを持っています。クリックすると、ボタンに「白い」輝きが適用されます。「ハイライトを表示する」が有効になっているときに使用されるUIButtonの「グロー」の色を変更するにはどうすればよいですか?

しかし、私は明るい灰色のボタンを持っており、より見やすくなるようにグローの色を変更したいと思います。

強調表示されているコントロールの背景の画像を黒に設定しようとしましたが、グローと違うように見えませんでした。私は、ボタンの背景色を変更することができます---すべてが動作します。

グロウカラーを制御するものは何ですか?あるいは、別の色が必要な場合は手動で行う必要がありますか?

答えて

3

「Show Touch Highlight」はまったくの利便性が高いため、別の効果を望む場合は手動で行う必要があります。目的の「グロー」描画を含む、強調表示された状態の別のイメージを供給するだけです。あなただけ.highlighted状態の背景色を設定するために必要以上

extension UIButton { 
    func setBackgroundColor(color: UIColor, for state: UIControlState) { 
     let image = UIImage.image(with: color) 
     let insets = UIEdgeInsetsMake(0, 0, 0, 0) 
     let stretchable = image.resizableImage(withCapInsets: insets, resizingMode: .tile) 
     self.setBackgroundImage(stretchable, for: state) 
    } 
} 

UIButtonあなたはあなたが望むどのような状態の色を設定することができます、次の拡張機能を作成することができる上setBackgroundImageを使用

2

私はちょうどあなたがコードに手を汚す気にしないことを望む

button.setBackgroundColor(color: UIColor.red, for: .highlighted) 

、私は(私はあなたがそれを行うことができさえわからない)絵コンテから同じことを行うにはどのように本当にわかりません。

関連する問題