gpt4 book ai didi

objective-c - NSPathControl 问题

转载 作者:行者123 更新时间:2023-12-03 16:43:17 25 4
gpt4 key购买 nike

我正在使用 cocoa 开发一个应用程序,但我遇到了 NSPathControl 的问题。

我将控件的样式设置为 Popup,当我启动应用程序并单击路径控件时,它会显示一个弹出菜单,其中包含我设置的 URL 的组件。即,对于像 file://localhost/Applications/Games/ 这样的 URL,它会显示以下内容:My MacbookMacintosh HD应用程序游戏

现在,当我单击 Applications 时,我会收到一个操作,并且该操作 [[sender clickedPathComponentCell] URL] 返回正确的 URL: file://localhost/Applications/.

问题1: 但是,当我单击 Macintosh HD 时,我得到一个带有双尾斜杠的 URL:file://localhost//

问题 2:当我单击 My Macbook 项时,我得到相同的 URL file://localhost//。所以,我有两个问题:

  1. 为什么 Macintosh HD 的 URL 以双斜杠结尾?

  2. 如何区分 Macintosh HDMy Macbook 上的点击,以及 My Macbook 的正确 URL 是什么,其中Finder 显示已安装卷的列表(在我的 MacBook 上是 Macintosh HDBOOTCAMP)?

我检查了名为“SourceView”的教程,但没有像 My Macbook 这样的项目,所以我无法确定 My Macbook 是否是确实作为某种虚拟文件夹存在,或者我应该使用 NSFileManager 来获取已安装卷的列表。

最佳答案

问题#1:

URL 为 file://localhost//,因为引导卷的路径为 /。这有点奇怪,但是 file://localhost/ (单斜杠)意味着“本地主机上没有路径的文件”,所以你会得到 file://localhost//(双斜杠)表示“本地主机上路径 / 上的文件。

您实际上不必担心所获得的 URL 的怪异 - 只需将其传递给任何需要它的人,它应该可以很好地处理它。

问题#2:

“我的 MacBook”并不真正存在 - 它是一个虚拟文件夹,显示已连接卷的列表、/Network 等。它没有有效的路径,因为它不存在不存在,因此您可以获取启动卷的路径。

关于objective-c - NSPathControl 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10703429/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com