问题标签 [nstokenfieldcell]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1012 浏览

cocoa - 让 NSSearchField 使用 NSTokenFieldCell?

我正在尝试在 10.7+ 上模拟 Mail.app 和 Finder.app 的标记化搜索功能,其中看起来是一个 NSSearchField,左侧是搜索放大镜图标,右侧是取消 (x) 按钮,但是还包括搜索字段内的标记。

带有标记的 NSSearchField

有没有办法让 NSSearchField 使用 NSTokenFieldCell 而不是 NSSearchFieldCell?我尝试调用-setCell:NSSearchField 实例,该实例有效并且似乎换出了单元格,正如调用po [searchField cell]调试器所证明的那样,但是搜索字段的绘图中断并且没有绘制文本字段。

我是以正确的方式解决这个问题还是有更好的方法来做到这一点?谢谢!

2016 年10 月 25 日更新:使用 Accessibility Inspector 我发现 Finder 和 Mail 使用混合私有子类:

  • SGTSearchField : NSSearchField
    • SGTSearchFieldCell : NSSearchFieldCell
    • SGTTokenFieldCell : NSTokenFieldCell

这些是名为Suggestions.framework. 希望苹果将来会公开这些课程。如果您也想公开此功能,请务必提交雷达文件。

0 投票
1 回答
741 浏览

objective-c - 删除 NSTokenField 令牌的回调

在 NSTokenField 中,似乎在删除令牌时不存在委托方法。

我试过制作包装器代表:

对于所有者,我尝试过:

问题是:

在编辑“tokenWasDeleted”时正在调用。(那也行)。但是当我选择一个令牌然后直接删除“tokenWasDeleted”时不会调用。

任何人都可以帮助如何处理这个问题,以便我可以获得被删除的令牌的索引。

谢谢,尼拉姆维尔马

0 投票
2 回答
1886 浏览

objective-c - NSTokenField:标记的不同颜色

我在我的 xib 中创建了一个 NSTokenField。我想在该 tokenField 中显示具有不同颜色的标记。含义:一些标记将是蓝色的,其余的将是红色的(根据它们的内容)。那可能吗?

以下代码对我不起作用。我希望有人可以帮助我:

结果:所有标记都保持蓝色...... :-(

任何帮助将不胜感激!

0 投票
1 回答
310 浏览

objective-c - 小牛风格标签

我对可可很陌生,我正在尝试找出如何创建类似于 Mavericks 中新标签 UI 的东西:

在此处输入图像描述

我假设,我将不得不覆盖 NSTokenFieldCell 以获取标签上的彩色点或图标。但是这个弹出列表是如何工作的呢?

谢谢你的帮助!

0 投票
0 回答
156 浏览

cocoa - 在 NSTextView 中插入 NSTokenFieldCell

我正在尝试将格式为“<# Text #>”的所有字符串转换为 NSTextView 中的标记 - 与 Xcode 中的行为相同。我已按照此处给出的步骤在 NSTextView 中添加自定义附件,但没有成功。有没有办法完成这种行为?

0 投票
0 回答
98 浏览

cocoa - NSTrackingArea Cocoa 的跟踪控制

我想让 NSTokenField 在加载屏幕时忽略鼠标事件。因此,如果我将光标移到该文本字段上,则应用程序将因崩溃日志而崩溃

*** -[RSTokenFieldCell respondsToSelector:]:消息发送到已释放实例 0x611000985c00

我尝试过覆盖 updateTrackingAreas、trackingAreas,但没有运气。有人可以让我知道如何使用它。我有堆栈溢出问题。这样做会完全禁用跟踪选项。请提出任何解决方案。

0 投票
0 回答
158 浏览

objective-c - 具有标记化搜索值的 NSSearchField

我正在寻找一种方法来使用邮件应用程序中的令牌来实现搜索输入,以实现类似的结果:

在此处输入图像描述

我想知道是否有一种直接的方法来实现它。我花了一些时间调查是否有任何类似的开源,但一无所获。但是大多数邮件客户端都有这种输入,包括“最近”菜单:

在此处输入图像描述

有没有办法重用 NSTokenFieldCell 来实现相同的结果,但在 NSSearchField 中?或者我应该只使用 NSTokenField,并在其上附加一个搜索图标和一个菜单?

0 投票
1 回答
43 浏览

swift - 带有 NSTokenFieldCell 的 MacOS Swift NSTableView 跟踪拖动从哪一列开始

我有一个简单的测试程序,它有一个 2 列 NSTableView(基于视图),两列的单元格都设置为 NSTokenFieldCell。我在这个控制器中也有一个 NSTokenField

我希望能够将令牌从表中拖放到字段中。当我有 1 列时,它运行良好。现在我有 2 列我需要知道要添加到字段中的标记

示例代码:

我想不通的是哪一列得到点击以启动拖放 tableView.clickedColumn 总是-1没有其他功能,比如这个火 func tableView(_ tableView: NSTableView, updateDraggingItemsForDrag draggingInfo: NSDraggingInfo)

更新:我可以在开始拖动操作后立即触发此功能: func tableView(_ tableView: NSTableView, draggingSession session: NSDraggingSession, willBeginAt screenPoint: NSPoint, forRowIndexes rowIndexes: IndexSet) 截屏

我试图捕捉mouseDown,但也没有任何运气。任何指针?

0 投票
0 回答
11 浏览

nstextview - 在 NSTextView 字段编辑器中提高基线

我想在输入文本时操纵基线NSTokenField以匹配显示的标记。为此,我遵循文档中的“使用字段编辑器”指南。建议在编辑之前覆盖- (NSText *)setUpFieldEditorAttributes:(NSText *)textObj;关联的方法NSTextFieldCell以调整字段编辑器属性。这是我在那里做的:

正如我可以在日志的帮助下确认的那样,调用了 get 方法。但是,基线在编辑时根本不会改变。同样调用其他类似[fieldEditor loosenKerning:self]的方法应该产生可见的结果似乎没有任何效果。我在这里做错了什么或做得更好 - 我怎样才能实现我想要的?