在我的应用程序中,我有一个NSSearchField绑定到一个arraycontroller,它以用户类型执行搜索.
问题是搜索字段一旦收到,就永远不会重新签署firstresponder-status.
当用户Enter在搜索字段外按下或点击时,最简单的辞职状态是什么?如果可能的话,我宁愿在Interface Builder中做尽可能多的工作.
我希望有一个上下文菜单,在搜索字段中输入文本时显示搜索结果.这是OS X中默认邮件应用程序的 图像.我知道如何根据用户的搜索请求过滤字符串数组,但我不知道如何以这种方式显示它.我正在使用Swift和Cocoa应用程序.任何帮助表示赞赏.
我有一个包含许多商店和 NSSearchfield 的视图,如果用户在搜索字段中按向上箭头,我想对商店做一些有趣的事情。我想在不子类化的情况下执行此操作,因为我在访问其他类的出口时遇到一些问题
编辑:我的插座问题是我无法从我的子类中更改它们的字符串值
if ([event keyCode]==126){
Myclass* c= [[Myclass alloc] init]; // the class that have the outlets
[c searchf];} //function that something interesting with the outlets
Run Code Online (Sandbox Code Playgroud) 在 Finder 中,我发现当 NSSearchfield 第一次获得焦点时取消按钮消失,但是当我在搜索字段中输入内容时,取消按钮一直存在,除非我单击它。我还手动创建了一个 nssearchfield 并输入一些单词但是,当我一个一个地删除单词直到什么都没有时,最后,取消按钮消失了。它看起来像 nssearchfield 的默认行为,那么我该如何更改默认行为呢?请帮忙,谢谢!
这是这个问题的重复。因为我对 Swift 的了解都是 Swift3,所以我想知道是否有人可以“翻译”这个答案中建议的解决方案。
\n\n还:
\n\n我制作了一个没有边框的 NSSearchfield,将其放入框架视图中,它仍然显示灰色边框。我很好奇如何禁用动画灰色边框,甚至如何更改灰色“搜索”线的颜色。
\n\n我的丑陋结果现在看起来像这样:
\n\n\n\n如果有人能告诉我如何管理这个困难的 NSSearchfield,那将是一个很大的帮助。
\n\n//更新
\n\n根据firstinq\xc2\xb4s的回答,图标现在消失了,这很棒。但仍然存在令人不安的动画灰色边框。我可以\xc2\xb4t理解:NSSearchFielt位于NSView(蓝色边框)内。所以 NSView 之外的所有内容都应该隐藏,对吧?那么为什么我仍然看到灰色边框?cell.isBordered = false没有效果。\n有什么建议如何处理吗?
这就是我绘制 NSView 边框的方法:
\n\nclass SearchFieldBorder: NSView {\n\n override func draw(_ dirtyRect: NSRect) {\n super.draw(dirtyRect)\n\n self.layer?.borderWidth = 1\n self.layer?.borderColor = NSColor.blue.cgColor\n }\n}\nRun Code Online (Sandbox Code Playgroud)\n cocoa ×5
macos ×2
swift ×2
contextmenu ×1
drawing ×1
keydown ×1
objective-c ×1
subclass ×1
xcode ×1