Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/apache-flex/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Cocoa 令牌字段的可拖动元素,如Mac时钟格式面板_Cocoa_Format_Panel_Draggable_Token - Fatal编程技术网

Cocoa 令牌字段的可拖动元素,如Mac时钟格式面板

Cocoa 令牌字段的可拖动元素,如Mac时钟格式面板,cocoa,format,panel,draggable,token,Cocoa,Format,Panel,Draggable,Token,我需要能够创建一个带有可拖动元素的令牌字段,如Mac时钟格式面板(参见下图) 非常感谢,亚历克斯 它们被称为令牌字段。苹果有一个好的选择。(在不知道你的目标的更多细节的情况下,这是我能得到的最精确的。) 编辑 我注意到你的问题被修改了。您需要的东西的行为类似于系统首选项的日期面板。下面是我想象中正在发生的事情的细目: 在“时间元素*部分中,有一些对象(模型)实现了可以在文本字段中使用的数据片段(小时、分钟、秒等) 还有一个关联视图,用于以与标记相同的样式绘制这些元素(可能取自Cocoa中的某些

我需要能够创建一个带有可拖动元素的令牌字段,如Mac时钟格式面板(参见下图)

非常感谢,亚历克斯


它们被称为令牌字段。苹果有一个好的选择。(在不知道你的目标的更多细节的情况下,这是我能得到的最精确的。)

编辑

我注意到你的问题被修改了。您需要的东西的行为类似于系统首选项的日期面板。下面是我想象中正在发生的事情的细目:

  • 在“时间元素*部分中,有一些对象(模型)实现了可以在文本字段中使用的数据片段(小时、分钟、秒等)
  • 还有一个关联视图,用于以与标记相同的样式绘制这些元素(可能取自Cocoa中的某些内容,也可能是自定义视图)
  • NSTokenField
    对象可以接受任意对象以及字符串。因此,您可以将这些对象从“时间元素”部分拖到令牌字段上。令牌字段的委托将处理这些非字符串对象

上面链接的指南包含了处理令牌字段中非字符串元素的信息。我想您所需要做的就是为要表示的数据部分创建模型,然后使用(可能是自定义)视图进行渲染。

它们被称为令牌字段。Apple有一个。(在不知道你的目标的更多细节的情况下,这是我能得到的最精确的。)

编辑

我注意到对您的问题所做的编辑。您需要类似于系统首选项的“日期”面板的功能。下面是我所想象的情况的分解:

  • 在“时间元素*部分中,有一些对象(模型)实现了可以在文本字段中使用的数据片段(小时、分钟、秒等)
  • 还有一个关联视图,用于以与标记相同的样式绘制这些元素(可能取自Cocoa中的某些内容,也可能是自定义视图)
  • NSTokenField
    对象可以接受任意对象以及字符串。因此,您可以将这些对象从“时间元素”部分拖到令牌字段上。令牌字段的委托将处理这些非字符串对象

上面链接的指南包含了处理令牌字段中非字符串元素的信息。我想您所需要做的就是为要表示的数据部分创建模型,然后使用(可能是自定义的)视图进行渲染。

我知道令牌字段是什么,但如何制作(09)之类的可拖动内容你可以把它拖到令牌字段,我为它填充值。我该怎么做?听起来你想要指南中关于表示对象的部分,它解释了如何配置令牌字段中使用的令牌:我该如何“为数据部分创建模型”?与创建任何其他模型的方法相同。您可能只需要一个模型,可能带有一个枚举或其他标识符,告诉它代表什么类型的数据;或者您可以为每段数据创建一个模型(例如,小时、分钟、时区等的模型)。基本上,这就是您将要拖动到令牌字段的表示对象。然后,令牌字段的委托可以处理所有适当的方法来向令牌字段提供反馈。这至少是构建令牌字段的一种方法。我如何创建模型周期?我知道令牌字段是什么,但如何创建可拖动的对象它类似于(09),您可以将其拖动到标记字段,我为其填充值。如何操作?听起来您需要指南中有关表示对象的部分,其中解释了如何配置标记字段中使用的标记:如何“为数据部分创建模型”?与创建任何其他模型的方法相同。您可能只需要一个模型,可能带有一个枚举或其他标识符,告诉它代表什么类型的数据;或者您可以为每段数据创建一个模型(例如,小时、分钟、时区等的模型)。基本上,这就是您将要拖动到令牌字段的表示对象。然后,令牌字段的委托可以处理所有适当的方法来向令牌字段提供反馈。这至少是构建它的一种方法。我该如何创建模型周期?我所说的可拖动是指如何拖动(7)将“下一个小时”或“下一个时区”(EST)拖动到任何令牌字段。我所说的“可拖动”是指如何将“下一个小时”或“下一个时区”(EST)拖动到任何令牌字段。