Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/22.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 如何向NSView动态添加类似于iCal新任务弹出窗口的字段?_Objective C_Macos_Cocoa_Xcode4_Osx Lion - Fatal编程技术网

Objective c 如何向NSView动态添加类似于iCal新任务弹出窗口的字段?

Objective c 如何向NSView动态添加类似于iCal新任务弹出窗口的字段?,objective-c,macos,cocoa,xcode4,osx-lion,Objective C,Macos,Cocoa,Xcode4,Osx Lion,我正在尝试实现一个NSView,它将承载一个“选择文件”附件按钮。如果用户选择添加一个文件,用户将获得添加另一个文件的选项(从“新的下拉列表集”中,用户基本上可以选择要附加的文件类型) 与此功能最匹配的是iCal的新任务编辑器,您可以在其中选择一个报警,然后它为您提供了一个选项,可以在下面添加另一个报警 做这件事的正确方法是什么(我是MacOSX开发新手)?我最初认为我应该创建一个带有所有“文件选项”的自定义NSView,然后如果用户要附加一个文件,我会在它的正下方(在NSScrollView中

我正在尝试实现一个NSView,它将承载一个“选择文件”附件按钮。如果用户选择添加一个文件,用户将获得添加另一个文件的选项(从“新的下拉列表集”中,用户基本上可以选择要附加的文件类型)

与此功能最匹配的是iCal的新任务编辑器,您可以在其中选择一个报警,然后它为您提供了一个选项,可以在下面添加另一个报警

做这件事的正确方法是什么(我是MacOSX开发新手)?我最初认为我应该创建一个带有所有“文件选项”的自定义NSView,然后如果用户要附加一个文件,我会在它的正下方(在NSScrollView中)动态添加另一个NSView。然而,如此多的应用程序都做了类似的事情,以至于我几乎觉得在我应该使用的控件集中还有其他东西

请有人给我指路好吗?“NSForm”或NSPredicateEditor是否用于此类内容?这就是我的意思:


NSForm和NSPredicateEditor都不适用于您想要执行的操作。我认为您关于如何在原始视图下添加自定义视图的想法是正确的。您不必在滚动视图中执行此操作,您可以像iCal一样扩展窗口的大小。

谢谢,但是在5次左右的警报后,iCal似乎允许在同一视图中滚动,这意味着原始备份视图是一个NSScrollView,当内容视图的大小增加面板边界时,它会被激活以进行滚动。