2016-11-13 10 views
0

私はNSButtonsをStoryboardで作成しました。背景色を変更したいと思います。私はSOとGoogleを検索しましたが、実際には私のプロジェクトや単純なテストプロジェクトでも機能するソリューションはありません。私が試した:NSButtonは背景色を設定しました。macOS 10.12

  1. (とと QuartzCoreをインポートし、wantsLayerを設定せずに含む)button.layer.backgroundColorを設定します。
  2. NSButtonからNSButtonCellを取得し、背景色を変更します。私はボーダー、ボーダレス、透明などでこれを試しました。背景色の変更はありません。私は正方形から勾配に変えてみました。運はありません。
+0

わかりませんが、私は質問を理解していますが、サイズ変更可能な長方形のボタンが必要です。私はいくつかのタイプ、正方形、グラデーションを試した... – Tim

答えて

1

これはmacOSのバグでなければなりません。私は、NSButtonCellは、単に1つの空のオーバーライドでEMPTYクラスとサブクラス化のbackgroundColorに応えることができます:

class ColorButtonCell: NSButtonCell { 
    override func draw(withFrame cellFrame: NSRect, in controlView: NSView) { 
     super.draw(withFrame: cellFrame, in: controlView) 
    } 
} 

このサブクラスを使用するとき、それはすべての期待通りに動作します!

関連する問題