【发布时间】:2012-07-25 16:30:19
【问题描述】:
我正在尝试使用 UIWebView 功能,特别是我想做这样的事情:Open links in Safari instead of UIWebVIew?
但是当我尝试将 UIWebViewDelegate 添加到我的 AppDelegate 界面时遇到问题。
有人知道是什么问题吗?请注意,这是 Mac OS 而不是 iOS。
【问题讨论】:
标签: objective-c macos cocoa
我正在尝试使用 UIWebView 功能,特别是我想做这样的事情:Open links in Safari instead of UIWebVIew?
但是当我尝试将 UIWebViewDelegate 添加到我的 AppDelegate 界面时遇到问题。
有人知道是什么问题吗?请注意,这是 Mac OS 而不是 iOS。
【问题讨论】:
标签: objective-c macos cocoa
添加:
#import <UIKit/UIKit.h>
【讨论】:
有人知道是什么问题吗?请注意,这是 Mac OS 而不是 iOS。
这就是问题所在。
MacOS X 上没有UIWebView 或UIWebViewDelegate。UI 是UIKit 的前缀,它是iOS 的AppKit 等价物。当您看到一个名称以 UI 开头的类时,您会立即知道您正在查看 iOS 代码。
您可能正在寻找的课程是WebView。 WebView 实际上使用了五个单独的委托,因此您可能需要实现多达五个不同的协议:WebUIDelegate、WebDownload、WebFrameLoadDelegate、WebPolicyDelegate 和 WebResourceLoadDelegate。 (实际上,我认为您不需要做那么多工作。例如,您可能不需要实施自己的访问策略。)
【讨论】:
UIWebView 仅适用于 iOS。您不能为 Mac OSX 使用 UIWebViewDelegate。如果您查看自己的代码,您使用的是 WebView,而不是 UIWebView。
【讨论】: