草庐IT

swift - cocoa 代理 nstabviewcontroller

coder 2023-09-06 原文

我有一个主 NSTabViewController有几个标签:

class MainTabViewController: NSTabViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do view setup here.
    }

    override func tabView(_ tabView: NSTabView, didSelect tabViewItem: NSTabViewItem?) {
        print(tabView)// returns <NSTabView: 0x101e17a10> but what to do with it ?
    }

}

我想每 NSViewController 签到一次如果变量 hasChangestrue然后弹出信息:

"You have unsaved changes. Do you want to change tab ?"

如果我在 MainTabViewController 中检查这个我得到<NSTabView: 0x101e17a10>我不知道该怎么办。

如果我尝试使用 NSTabViewDelegate在我的 MyViewController然后我不知道如何委托(delegate) MainTabViewController在里面。在哪里附加它?

class MyViewController: HIDNSViewController {
    func tabView(_ tabView: NSTabView, didSelect tabViewItem: NSTabViewItem?) {
        //Never called
    }
}

最佳答案

0x101e17a10是tabView对象指向的NSTabView实例的地址。您需要在 didSelect 方法中打印 tabView identifiers

您需要在 Interface Builder 中设置标识符:

然后(例如):

override func tabView(_ tabView: NSTabView, didSelect tabViewItem: NSTabViewItem?) {
    if tabView.selectedTabViewItem?.identifier! as! String == "1" {
        print("FIRST VC")
    } else {
        print("SECOND VC")
    }
}

Tab 时的输出:

关于swift - cocoa 代理 nstabviewcontroller,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40270775/

有关swift - cocoa 代理 nstabviewcontroller的更多相关文章

  1. objective-c - 在设置 Cocoa Pods 和安装 Ruby 更新时出错 - 2

    我正在尝试为我的iOS应用程序设置cocoapods但是当我执行命令时:sudogemupdate--system我收到错误消息:当前已安装最新版本。中止。当我进入cocoapods的下一步时:sudogeminstallcocoapods我在MacOS10.8.5上遇到错误:ERROR:Errorinstallingcocoapods:cocoapods-trunkrequiresRubyversion>=2.0.0.我在MacOS10.9.4上尝试了同样的操作,但出现错误:ERROR:Couldnotfindavalidgem'cocoapods'(>=0),hereiswhy:U

  2. ruby - HTTP 请求中的用户代理,Ruby - 2

    我是Ruby的新手。我试过查看在线文档,但没有找到任何有效的方法。我想在以下HTTP请求botget_response()和get()中包含一个用户代理。有人可以指出我正确的方向吗?#PreliminarycheckthatProggitisupcheck=Net::HTTP.get_response(URI.parse(proggit_url))ifcheck.code!="200"puts"ErrorcontactingProggit"returnend#Attempttogetthejsonresponse=Net::HTTP.get(URI.parse(proggit_url)

  3. ruby-on-rails - capybara poltergeist - 覆盖用户代理 - 2

    有人知道如何将capybarapoltergeist的用户代理覆盖到移动用户代理以进行测试吗?我发现了一些有关为seleniumwebdriver配置它的信息:http://blog.plataformatec.com.br/2011/03/configuring-user-agents-with-capybara-selenium-webdriver/这在capybara闹鬼中怎么可能? 最佳答案 请参阅poltergeistgithub页面上的链接:https://github.com/teampoltergeist/polte

  4. ruby - 如何配置 Ruby Mechanize 代理以通过 Charles Web 代理工作? - 2

    我正在使用Ruby/Mechanize编写一个“自动填写表格”应用程序。它几乎可以工作。我可以使用精彩CharlesWeb代理以查看服务器和我的Firefox浏览器之间的交换。现在我想使用Charles查看服务器和我的应用程序之间的交换。Charles在端口8888上代理。假设服务器位于https://my.host.com。.一件不起作用的事情是:@agent||=Mechanize.newdo|agent|agent.set_proxy("my.host.com",8888)end这会导致Net::HTTP::Persistent::Error:...lib/net/http/pe

  5. ruby - 如何捕获所有 HTTP 流量(本地代理) - 2

    我希望访问我机器上的所有HTTP流量(我的Windows机器-不是服务器)。据我了解,拥有一个本地代理是所有流量路线的必经之路。我一直在谷歌搜索但未能找到任何资源(关于Ruby)来帮助我。非常感谢任何提示或链接。 最佳答案 WEBrick中有一个HTTP代理(Rubystdlib的一部分)和here's一个实现示例。如果你喜欢生活在边缘,还有em-proxy伊利亚·格里戈里克。这postIlya暗示它似乎确实需要一些调整来解决您的问题。 关于ruby-如何捕获所有HTTP流量(本地代理)

  6. ruby-on-rails - 如何在 Ruby Net::FTP 中使用代理服务器? - 2

    我正在使用Net::FTPruby​​库连接到FTP服务器并下载文件。一切正常,但现在我需要使用出站代理,因为他们的防火墙将IP地址列入白名单,并且我正在使用Heroku来托管该站点。我正在试用新的Proximo附加组件,它看起来很有前途,但我无法让Net::FTP使用它。我在Net::FTPdocs中看到以下内容:connect(host,port=FTP_PORT)EstablishesanFTPconnectiontohost,optionallyoverridingthedefaultport.IftheenvironmentvariableSOCKS_SERVERisset,

  7. objective-c - 将 Cocoa header 链接到 ruby​​ C 扩展 - 2

    我正在为ruby​​开发一个C扩展,但我需要包含来自IOBluetooth框架的header,特别是:#import#import一切都编译正常,但在运行时,扩展错误:path/to/file.rb:1:in`require_relative':dlopen(/path/to/extension.bundle,9):Symbolnotfound:_OBJC_CLASS_$_IOBluetoothDeviceInquiry(LoadError)我相当确定这与未包含在链接过程中的框架有关,但我不确定原因。任何帮助将不胜感激extconf.rb:#Loadsmkmfwhichisusedto

  8. ruby - 如何在没有用户名和密码的情况下访问代理? - 2

    我想使用nokogiri和mechanize自动化一个计时网络客户端。我需要通过代理服务器连接,但问题是,我不知道所述代理服务器的用户名和密码。我想获取存储在计算机上的此代理的缓存凭据..例如,在c#中你可以使用:stringproxyUri=proxy.GetProxy(requests.RequestUri).ToString();requests.UseDefaultCredentials=true;requests.Proxy=newWebProxy(proxyUri,false);requests.Proxy.Credentials=System.Net.Credential

  9. ruby - 如何在 Ruby 中编写一个简单的 HTTPS 代理服务器? - 2

    我看过几个用Ruby编写HTTP代理的例子,例如thisgistbyTorstenBecker,但我如何扩展它来处理HTTPS,又名“中间人”SSL代理?我正在寻找一个简单的源代码框架,我可以扩展它以满足我自己的日志记录和测试需求。更新我已经在使用Charles,aniftyHTTPSproxyapp类似于Fiddler,它本质上是我想要的,只是它被打包在一个应用程序中。我想自己写一个,因为我对过滤和展示有特定的需求。更新二四处浏览后,我对术语的理解有所好转。我不是在寻找完整的“中间人”SSL代理。相反,它将在我的机器上本地运行,因此我可以接受它提供的任何SSL证书。但是,我需要查看我

  10. ruby - 带代理的 HTTParty - 2

    我在heroku上试图访问一个需要将我的应用程序ip列入白名单的API。因此,我使用heroku附加组件proximo获取api白名单的主机/ip。我设置的使用HTTParty测试连接性的快速测试失败了。classFakeRequestincludeHTTPartyhttp_proxy'XX.XXX.XX.XX',80,'user','pass'defset_defaults{:api_key=>"BLARG_BLARG",:login_name=>"user",:method=>"do_something",:response_format=>"json",:v=>"1.0",:lo

随机推荐