gpt4 book ai didi

macos - 尝试制作一个选项卡式浏览器

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

我在使用 cocoa 时遇到问题,当我运行应用程序时,选项卡会按预期添加,但所有 Web View 都从 url 字段获取相同的字符串。

基本上,如果我在一个标签上访问 google,它就会在所有标签上访问 google。

有什么方法可以让所选选项卡上的 Web View 做出响应,而不是其他选项卡上的 Web View ?

这是代码:

- (IBAction)newTab:(id)sender {
NSTabViewItem *item = [NSTabViewItem new];
[item setView:_webView];
[item setLabel:@"New Tab"];
[_tabView addTabViewItem:item];
}

最佳答案

看起来您正在创建一个新选项卡,然后将 WebView 移至其中。要为每个选项卡创建新的 Web View ,您有一些选择,但其中一个是使用 NSViewController:

  1. 如果您在与选项卡 View 相同的 xib 中创建 Web View ,请将其移动到单独的 xib。将该 xib 的所有者的类更改为 NSViewController。
  2. 在代码中添加新选项卡时,加载 xib(假设其名为 WebView.xib):
- (IBAction) newTab: (id) sender
{
NSTabViewItem *item = [[NSTabViewItem alloc] init];
NSViewController *viewController =
[[NSViewController alloc] initWithNibName: @"WebView" bundle: nil];
WebView *webView = [viewController view];
[item setView: webView];

[_tabView addTabViewItem: item];
[_webViewControllers addObject: viewController]; // Store the view controller, remove when the user closes the tab.
}

这是有关视​​图 Controller 的教程:http://comelearncocoawithme.blogspot.fi/2011/07/nsviewcontrollers.html

关于macos - 尝试制作一个选项卡式浏览器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24974803/

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