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
Macos 编写在Cocoa中创建多个接口对象的类_Macos_Cocoa_Class - Fatal编程技术网

Macos 编写在Cocoa中创建多个接口对象的类

Macos 编写在Cocoa中创建多个接口对象的类,macos,cocoa,class,Macos,Cocoa,Class,我正在为OSX编写一个应用程序,它将有几个垂直滑块,每个滑块上都有标签,标签上有记号标记,并在其正上方有一个NSTEXT字段。我需要以编程方式放置标签,使它们对齐。因此,与其为每个滑块都这样做,我认为编写一个这样做的类是明智的,然后我可以创建该类的4或5个实例,它将为每个滑块设置UI。这可能吗?我不知道从哪里开始。从你的描述来看,你的情况有点不清楚。如果你能提供更多的细节,也许还有一个截图,那就太好了 您提到要编写一个类,并创建它的一些实例。你应该问问自己,这门课在概念上的重要性是什么?事实上,

我正在为OSX编写一个应用程序,它将有几个垂直滑块,每个滑块上都有标签,标签上有记号标记,并在其正上方有一个NSTEXT字段。我需要以编程方式放置标签,使它们对齐。因此,与其为每个滑块都这样做,我认为编写一个这样做的类是明智的,然后我可以创建该类的4或5个实例,它将为每个滑块设置UI。这可能吗?我不知道从哪里开始。

从你的描述来看,你的情况有点不清楚。如果你能提供更多的细节,也许还有一个截图,那就太好了

您提到要编写一个类,并创建它的一些实例。你应该问问自己,这门课在概念上的重要性是什么?事实上,我不会为每个组创建一个类,只是为了定位控件。在这种情况下,控制器(或其他地方)中的简单方法应足以实例化、定位和装配控件:

- (void)placeNewControlGroup
{
    // do the placement
    // set up bindings
    // rig actions etc.
}
然后,无论何时需要,都可以调用该方法来创建一组新的控件(即滑块、标签等)

或者,您可以使用Cocoa为处理集合提供的一些标准视图。例如,
NSCollectionView
或基于视图的
NSTableView
。一个不错的视频教程为前者可以找到


例如,创建
NSCollectionView
并水平调整其大小以适合您的内容(即垂直滑块)可能是一种解决方案。在中,还提出了一个旋转的
NSTableView
,这可能不是一个坏主意。

关于使用方法而不是类,您是绝对正确的。我忘了。我将签出NSCollectionView,看看这是否对我有帮助。