gpt4 book ai didi

swift - NSSearchField:如何隐藏图标和边框?

转载 作者:搜寻专家 更新时间:2023-11-01 06:15:52 28 4
gpt4 key购买 nike

这有点像 this 的副本问题。因为我所知道的关于 Swift 的一切都是 Swift3,我想知道是否有人可以“翻译”这个答案中建议的解决方案。

还有:

我做了一个没有边框的NSSearchfield,放到framed view里,还是显示灰色边框。我很好奇如何禁用动画灰色边框,甚至可能如何更改灰色“搜索”线的颜色。

我丑陋的结果现在看起来像这样:

enter image description here

如果有人能告诉我如何管理这个困难的 NSSearchfield,那将是一个很大的帮助。

//更新

根据 firstinq 的回答,图标现在消失了,这很好。但是,仍然有这个令人不安的动画灰色边框。我无法理解:NSSearchFielt 在 NSView(蓝色边框)内。所以 NSView 之外的所有东西都应该被隐藏,对吧?那么为什么我仍然看到灰色边框? cell.isBordered = false 无效。有什么建议如何处理吗?

enter image description here

这是我绘制 NSView 边框的方式:

class SearchFieldBorder: NSView {

override func draw(_ dirtyRect: NSRect) {
super.draw(dirtyRect)

self.layer?.borderWidth = 1
self.layer?.borderColor = NSColor.blue.cgColor
}
}

最佳答案

要隐藏图标:将单元格转换为 NSSearchFieldCell 并将单元格的 searchButtonCell 设置为透明。可能的 swift3 版本:

if let cell = self.searchField.cell as? NSSearchFieldCell {
cell.searchButtonCell?.isTransparent = true
}

这里的searchField是一个NSSearchField

移除焦点边框:

searchField.focusRingType = .none

要更改灰线/光标,最好将 NSSearchField 子类化并覆盖这些方法。你可以从here得到一个想法.

关于swift - NSSearchField:如何隐藏图标和边框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45241760/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com