@objc 动态 var 在 Swift 4 中意味着什么

2024-06-22

你能简单解释一下什么吗@objc and dynamic在 Swift 4 中使用 Xcode 9.x 意味着什么?

通过尝试、错误以及 stackoverflow 中的后续文章,我最终实现了此代码片段的工作。但我想了解一些关于这些神奇关键字的知识。

class SampleViewController: NSViewController {

  @objc class Parameters : NSObject {
    @objc dynamic var value1: Double = 0  // bound to Value of a NSTextfield with NumberFormatter
    @objc dynamic var value2: Double = 0  // as "parameters.value1" for the Model Key Path
  }

  @objc dynamic var parameters = Parameters()

  @objc dynamic var value3: Double {  // in the similar way as "value3" for the Model Key Path
    get {
      return parameters.value1 + parameters.value2
    }
  }

  override class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String> {
    switch key {
    case "value3" :
      return Set(["parameters.value1", "parameters.value2"])
    default:
      return super.keyPathsForValuesAffectingValue(forKey: key)
    }
  }

}

@objc意味着您希望您的 Swift 代码(类、方法、属性等)在 Objective-C 中可见。

dynamic意味着你想使用 Objective-C 动态调度。

Swift 3 - 动态与 @objc https://stackoverflow.com/questions/40795840/swift-3-dynamic-vs-objc

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

@objc 动态 var 在 Swift 4 中意味着什么 的相关文章

  • 如何将一个div的内容克隆到另一个div

    我想使用jquery克隆将选定div的内容复制到另一个div 但我不想将它附加到任何地方 我的意思是 当我们用 jquery 克隆一个 div 时 如果我错了 请纠正我 我们必须设置它的位置 它将动态创建一个显示的新分区 但我想获取所选di
  • swift 4 - HMCharacteristicTypeSerialNumber 已弃用

    我想阅读输入的配件信息HMAccessory 例如序列号 HMCharacteristicTypeSerialNumber 制造商 HMCharacteristicTypeManufacturer 模型 HMCharacteristicTy
  • AJAX VS PHP 动态网页?

    当您只能使用 php 来实现动态网页时 为什么要使用 AJAX 呢 使用 AJAX 的主要原因是用户体验 UX 现在 AJAX 不一定会改善每个实例的用户体验 所以在很多地方坚持使用纯 PHP 完全没问题 但想象一下这样的情况 网站上有一个
  • JQuery 设置动态最大宽度

    我不太擅长 jQuery 因此完整的代码解决方案将是理想的选择 该函数将 获取浏览器屏幕的 70 宽度 将该宽度转换为其相应的 px 值 设置最大宽度 mainContainer使用从转换 计算中获得的值 这是我要设置的容器的 CSS 样式
  • 设置动态创建的 iframe 的基本标签

    我正在尝试动态创建 iframe 并在创建之前设置它的基本标记 ifrm document createElement IFRAME ifrm setAttribute src test html ifrm style width 400
  • 在 Linq 查询中使用动态列名称

    foreach Dimension dimensions in Enum GetValues typeof Dimension var r new ReferenceTable dimensions referenceItems List
  • 如何动态编译和加载外部java类? [复制]

    这个问题在这里已经有答案了 这个问题与我见过的许多问题类似 但大多数问题对于我正在做的事情来说不够具体 背景 我的程序的目的是让使用我的程序的人可以轻松地制作自定义 插件 然后编译并将它们加载到程序中以供使用 而不是在我的程序中实现不完整
  • WCF 中的动态 ExpandoObject

    尝试使用枚举类型进程和动态数据的操作来 Ping Pong 我的服务 ServiceContract CallbackContract typeof iStackoverflowCallBack public interface iStac
  • 在 Swift 4 中,如何删除基于块的 KVO 观察者?

    如果我像这样存储观察者 let observer NSKeyValueObservation foo observe value options new foo change in print change newValue 如何删除 禁用
  • 如何在占位符中动态生成的标签之间创建换行符?

    这是文件后面代码中的以下代码Page Load event LinkButton linkButton new LinkButton linkButton ID LinkButtonDynamicInPlaceHolder1Id i lin
  • Angular 2+ 从注入动态模板的标记创建 ViewRef

    我想从动态插入到模板中的标记创建一个 ViewRef 根据以下代码示例这可能吗 模板 html
  • 具有 Void 关联类型的通用 Swift 4 枚举

    tl dr 是否可以实例化具有关联类型值的通用 Swift 4 枚举成员Void 背景 我正在使用一个简单的Result枚举 类似于反典型结果 https github com antitypical Result enum Result
  • C# 4.0 动态对象和 WinAPI 接口,如 IShellItem(无需在 C# 源代码中定义它们)

    是否可以 使用 C 4 0 中的新动态关键字 使用接口 如 IShellItem 或其他 WinAPI 接口 而无需在 C 源代码中定义它们 或者至少不定义接口成员 我正在尝试类似的事情 const string IShellItemGui
  • IEnumreable 动态和 lambda

    我想在 a 上使用 lambda 表达式IEnumerable
  • 在 Primefaces 中以编程方式创建命令按钮

    我正在尝试创建一个带有输入文本和命令按钮的动态表单 一切正常 但是当我单击命令按钮时 永远不会调用操作侦听器 请提出我做错了什么或者这是否是 PF 或 Mojarra 的错误 代码如下 panel new Panel panel setHe
  • Bash 中的动态变量名称

    我对 bash 脚本感到困惑 我有以下代码 function grep search magic way to define magic variable 1 ls tail 1 echo magic variable 1 我希望能够创建一
  • @objc 动态 var 在 Swift 4 中意味着什么

    你能简单解释一下什么吗 objc and dynamic在 Swift 4 中使用 Xcode 9 x 意味着什么 通过尝试 错误以及 stackoverflow 中的后续文章 我最终实现了此代码片段的工作 但我想了解一些关于这些神奇关键字
  • Firebase FCM 推送通知停止工作 iOS 11.1.1

    我正在使用 Firebase FCM 从 iOS 设备发送推送通知 直到昨天 推送通知仍然有效 当我现在发送推送通知时 一切都显示成功 但设备上没有收到任何信息 如果我直接通过curl请求发送 这就是响应 multicast id 7815
  • 是否可以使 MGLPolyLines 可选择? - 斯威夫特,MapBox

    是否可以使 MGLPolyLine 可触摸 可选择 具有用户交互 在我的项目中 用户需要触摸折线 有这个问题 https stackoverflow com questions 43683846 how to make a mglpolyl
  • Pickle 动态参数化子类

    我有一个通常存储腌制类类型的系统 我希望能够以相同的方式保存动态参数化的类 但我不能 因为我在尝试腌制一个未全局找到的类 未在简单代码中定义 时收到 PicklingError 我的问题可以建模为以下示例代码 class Base obje

随机推荐

  • 在 MySQL 中,“开销”是什么意思,它有什么不好,以及如何修复它?

    简单的问题 但它已经困扰我一段时间了 MySQL 中的 开销 是什么 我应该担心吗 单击 优化表 真的可以修复它吗 看来开销是数据库用于运行某些查询的临时磁盘空间 因此您只需担心开销是否真的很高 您可以将 优化表 与硬盘驱动器碎片整理进行比
  • Str.lastIndexOf("\") 给出错误[重复]

    这个问题在这里已经有答案了 我想从字符串中删除最后一次出现的 这个特殊字符 我尝试使用字符串函数 例如 String word str substring str lastIndexOf 但每次我都会收到一个错误 要求添加额外的报价 同时我
  • Git:如何从单个 git 提交中获取 +/-(插入和删除)的总数

    我有一个 git 提交 需要获取插入和删除的总数 I know git show
  • 管理员(仅)用户注册,Flask-Security

    我目前正在使用 Flask Security 包括 Flask WTForms Flask SQLalchemy 和 Flask Login 为 Web 应用程序构建登录 我已经能够相当轻松地设置大部分登录流程 包括忘记密码 但是我想让用户
  • DataImportHandler 和部分更新

    是否可以在 Solr 4 中使用 DataImportHandler 进行部分更新 我是否应该能够使用像下面这样的 data config xml 并在不同的时刻导入两个实体并获取包含这两个数据的完整文档
  • npm run 脚本的命名参数

    我想将命名参数传递给 npm run 脚本 这样我就可以执行如下操作 scripts say hello echo greeting ls npm run hello greeting hello 我希望它然后将 hello 代替 gree
  • Jinja2 带有组件的模板?块?模板?

    有一个小问题要问jinja2模板化 我想创建一个可重用的模板来包含然后覆盖块 宏不会让我轻松地编写 HTML 垃圾作为参数 不是吗 假设我想多次重复使用包含 并且在我想要动态分配的块中使用大量 HTML 垃圾 我该怎么做呢 我猜肯定不是用宏
  • Perl OLE32 MSSQL dateadd 函数结果出现“光标类型已更改”错误

    以下 sql select DATEADD day DATEDIFF day 2 GETDATE 20 00 00 as A 在 Microsoft sql 查询中运行得非常好 然而在 perl 中 它抱怨以下错误 描述 Microsoft
  • 当我在 scala 中使用全局映射变量而不广播时会发生什么

    在 scala 中 当我在 scala 中使用全局映射变量而不进行广播时会发生什么 例如 如果我使用变量collect 例如collectAsMap 看来它是一个全局变量 我可以在所有地方使用它RDD mapValues 函数无需显式广播它
  • 使用 Jitsi 进行桌面共享

    你好呀 我刚刚开始研究 Jitsi VideoBridge 正在开发一个桌面共享应用程序 实时流音频和视频 它可以使用 WebRTC 在所有平台上运行 Jitsi 都是用 JAVA 编写的 有人可以分享 指导我 Jitsi 的 C 实现吗
  • Laravel 保存一对多关系

    我在 Laravel 中建立了以下关系 OrderStatus Model hasMany Order Order Model belongsTo OrderStatus 数据库设置为orders表和一个order statuses桌子 这
  • 最低延迟的小数据互联网传输协议? C#

    我正在做一个互联网游戏项目 其中涉及在两台普通家用电脑之间通过互联网不断发送小规模数据 1K 到 50K 之间 我关心的关键是延迟 据我所知 TCP UDP是流行的 TCP 可靠 但比 UDP 慢 而 UDP 不安全 我必须实现自己的故障处
  • 如何从 Android 设备访问本地主机网站

    我的笔记本电脑中有一个 ASP net Web API 地址如下 本地主机 99949 我将其添加到 IIS Express 中 这样我就可以从同一 LAN 网络中的另一台计算机访问我的 Web Api 如下所示 Nimis 80 我可以从
  • Scala Vector 折叠语法(/: 和 :\ 和 /:\)

    有人可以提供一些例子来说明如何 and http www scala lang org archives downloads distrib files nightly docs library scala collection immut
  • Angular 2:以两种不同的方式使用组件:作为路由的目标和通过选择器

    这是关于 Angular 2 的一般问题 这里没有源代码 在 Angular2 中 组件可以被指定为路由器特定路由的目标 路线 something myId 可能会激活 SomethingComponent 同时 可以通过引用模板中的选择器
  • 如何在libGDX框架中匹配用户点击和精灵对象位置

    我正在使用 libGDX java 框架在 Eclipse 中开发练习游戏 我的游戏处于横向模式 我正在使用精灵图像作为游戏资产 实际上我正在尝试遵循千螺栓僵尸鸟教程 http www kilobolt com zombie bird tu
  • 我可以更改 UIPopover 动画锚点吗?

    我正在尝试使用 UIPopover 实现 下拉 菜单效果 当我将高度从 0px 更改为 500px 时 它似乎向上拉伸 250px 向下拉伸 250px 本质上是将 UIPopover 锚定在中心的原始生成点 我希望锚点位于弹出窗口的顶部
  • 是否有 Perl 脚本来实现 C++ 类 get/set 成员函数?

    今天早上我正在读这本书务实的程序员 http www pragprog com the pragmatic programmer第 3 章介绍了每个程序员都应该拥有的基本工具 他们提到了代码生成工具 他们提到了一个用于 C 程序的 Perl
  • gevent:产生大量小绿芽的缺点是什么?

    根据我在评论中的问题这个答案 https stackoverflow com a 16433061 348501对这个问题 带有嵌套 Web 请求的 Gevent 池 https stackoverflow com q 15322701 3
  • @objc 动态 var 在 Swift 4 中意味着什么

    你能简单解释一下什么吗 objc and dynamic在 Swift 4 中使用 Xcode 9 x 意味着什么 通过尝试 错误以及 stackoverflow 中的后续文章 我最终实现了此代码片段的工作 但我想了解一些关于这些神奇关键字