1
스위프트 4NSOutlineView을 선택한 경우 텍스트 색은 내가 <code>NSOutlineView</code>이, 스위프트
맥 OS 10.13 작동하지 나는 사용자가 클릭 할 때 각 행의 모양을 사용자 정의하기 위해 노력하고있어.
저는 셀에 대해 사용하는 뷰 기반 NSTableCellView
하위 클래스가 있습니다. backgroundStyle
을 무시하면 아이콘 변경이 완벽하게 작동합니다.. 하지만 텍스트 색상이 이상한 일을하고 있습니다.
여기가 비디오를 보여입니다 :http://d.pr/v/suTD8B
여기 내 코드입니다 : 뭐가 잘못
class MenuItemCell: NSTableCellView{
@IBOutlet weak var label: NSTextField!
@IBOutlet weak var icon: NSImageView!
//Customizes the selected state of menu row
override var backgroundStyle: NSView.BackgroundStyle {
set{
if let rowView = self.superview as? NSTableRowView {
super.backgroundStyle = rowView.isSelected ? .dark : .light
}
if self.backgroundStyle == .dark {
label.textColor = NSColor.white
icon.image = NSImage(named: NSImage.Name(rawValue: "menu-project-selected"))
}else{
label.textColor = NSColor.menuTextColor
icon.image = NSImage(named: NSImage.Name(rawValue: "menu-project"))
}
}
get{ return super.backgroundStyle }
}
}
어떤 생각이? 나는 몇 시간 동안 수색을 해왔고 알아낼 수 없다.
는 어디 어둠에 self.backgroundStyle을 설정합니까? 다음에 요청할 때 get을 사용하여 super.backgroundStyle을 반환합니다. – Dis3buted