gpt4 book ai didi

cocoa - 如何让 NSURL 指向本地目录?

转载 作者:行者123 更新时间:2023-12-03 17:13:29 26 4
gpt4 key购买 nike

今天读Adium代码,发现NSURL的一个有趣的用法:

NSURL *baseURL = [NSURL URLWithString:[NSString stringWithFormat:@"adium://%@/adium", [messageStyle.bundle bundleIdentifier]]];
[[webView mainFrame] loadHTMLString:[messageStyle baseTemplateForChat:chat] baseURL:baseURL];

我尝试记录网址并得到这个 adium://im.adium.Smooth Operator.style/adium,然后我创建了一个空白项目来查看如何创建这样的 NSURL 但失败。当我向项目中的 webview 框架发送 loadHTMLString 消息时,如果 baseURL 为零,则一切正常,如果不是,我会在 View 中看到一个空白页面。

这是我的代码,项目名称是webkit

NSURL *baseURL = [NSURL URLWithString:@"webkit://resource"];
//if baseURL is nil or [[NSBundle mainBundle] bundleURL], everything is fine
[[webView mainFrame] loadHTMLString:@"<html><head></head><body><div>helloworld</div></body></html>"
baseURL: baseURL];
[frameView setDocumentView:webView];
[[frameView documentView] setFrame:[frameView visibleRect]];

问题是如何制作一个自定义协议(protocol)而不是http://?

最佳答案

adium://%@/adium ,第一部分称为协议(protocol),您还可以注册您的协议(protocol) webkit:看看 How to map a custom protocol to an application on the Mac?Launch Scripts from Webpage Links

关于cocoa - 如何让 NSURL 指向本地目录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14096893/

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