Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xcode/7.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
Objective c 可以使用哪个控件来显示动态表单(包含各种类型的数据)?_Objective C_Xcode_Cocoa_Nsmatrix - Fatal编程技术网

Objective c 可以使用哪个控件来显示动态表单(包含各种类型的数据)?

Objective c 可以使用哪个控件来显示动态表单(包含各种类型的数据)?,objective-c,xcode,cocoa,nsmatrix,Objective C,Xcode,Cocoa,Nsmatrix,我面临以下问题: 我们有项的元数据,每个项都可以是不同类型的NSControl,当前为NSTokenField和NSTextField,但我们可能需要NSCombo或其他类型。 我需要构建一个表单,其中每个条目都有一个标签和一个可编辑控件。 由于从服务器检索项目,因此必须动态构建此表单 我用NSMatrix实现了它,除了它看起来很破旧之外,我还面临一些视觉问题,我不知道如何解决 视觉问题是每次我将鼠标移到NSTextFieldCell上时,都会在NSMatrix表单的左上角绘制标记 现在,我

我面临以下问题:

  • 我们有项的元数据,每个项都可以是不同类型的NSControl,当前为NSTokenField和NSTextField,但我们可能需要NSCombo或其他类型。 我需要构建一个表单,其中每个条目都有一个标签和一个可编辑控件。 由于从服务器检索项目,因此必须动态构建此表单
我用NSMatrix实现了它,除了它看起来很破旧之外,我还面临一些视觉问题,我不知道如何解决

视觉问题是每次我将鼠标移到NSTextFieldCell上时,都会在NSMatrix表单的左上角绘制标记

现在,我正在考虑换一种控制方式

我在谷歌上搜索了几个小时,发现了以下控件: NSForm, NSMatirx(NSForm的母公司), n集合视图, NSTableView

以下哪一项最适合执行此任务

我希望我清楚,因为我想添加图片,但它不会让我,因为缺乏“声誉点”

谢谢你的帮助,
Eyal.

NSTokenField
NSTextField
的子类,因此可以使用
NSTableView
来显示它们


您还可以绘制一个包含所有元素的自定义
NSCell
。当每个“项目”都有不同的元素数时,这就变得有点复杂了。

NSTableView是否提供编辑功能?每个项目应由用户编辑,标签应为文本,无需编辑。是。您可以有一个带有两列的
NSTableView
。一个带有
NSTextFieldCell
,另一个带有
NSTOKENFELDCELL
。可以在Interface Builder中将
NSTextFieldCell
设置为可编辑。对于
NSTokenFieldCell
您必须添加一个
NSTextFieldCell
,并在identity inspector中将其类更改为
NSTokenFieldCell
。然后,它也可以在Interface Builder中进行编辑。但它们在默认情况下都是可编辑的。