@strongify 的原因是什么

2024-02-06

In 活性可可 https://github.com/ReactiveCocoa/ReactiveCocoa有宏可以防止循环引用@weakify和@strongify。据我了解@weakify做一些像我通常做的事情,即创建__weak在块中使用的参考,但是怎么样@strongify?

为什么我需要在区块中再次使其变得强大?

以下是一些示例用法:

@weakify(self);
[RACObserve(self, username) subscribeNext:^(NSString *username) {
    @strongify(self);
    [self validateUsername];
}];

如果您仅在块内使用弱引用,则 self 可能会在执行块时被释放。但是,如果您想确保 self 保留在内存中直到块执行完毕,则必须将弱引用转换回强引用。

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

@strongify 的原因是什么 的相关文章

  • 将 UITableViewDataSource 与具有子视图的自定义单元格结合使用

    在 UITableView 中使用自定义单元格时 我遇到了奇怪的表格重叠 Problem 向下滚动 最后两行上面画有顶部两行 向上滚动 前两行上面画有下面两行 这是 UITableViewDataSource 的代码 func tableV
  • iOS 8 支持动态链接吗?

    直到 iOS7 之前 出于安全考虑 Apple 都不支持动态链接 开发人员之间的代码重用通常依赖于静态库 这些静态库是作为应用程序可执行文件的一部分构建的 在 iOS8 中引入扩展似乎稍微改变了这一点 因为扩展是单独的可执行文件 扩展及其包
  • 在 Android 上使用 opus 剪辑从 IOS 发送的声音

    我正在 IOS 中从 audioUnit 录制音频 用 opus 编码字节并通过 UDP 将其发送到 android 端 问题是播放的声音有点削波 我还通过将原始数据从 IOS 发送到 Android 来测试声音 效果非常完美 我的 Aud
  • tableView.dequeueReusableCellWithIdentifier() 导致应用程序挂起

    原帖 我们最近将我们的应用程序转换为 Swift 2 0 和 iOS9 我看到的一个奇怪的问题是调用 tableView dequeueReusableCellWithIdentifier 会导致应用程序挂在模拟器中 The code fu
  • 从数组中获取随机字符串[重复]

    这个问题在这里已经有答案了 我试图从数组 firstArray 中获取随机字符串并将其打印在 UILabel label 中 我似乎无法弄清楚并且出现错误 感谢您的帮助 我尝试搜索但找不到任何最新的教程 方法 import UIKit cl
  • 是否可以使“HTML 到语音”与“文本到语音”相同?

    我有一个奇怪的要求 在我现有的应用程序中我有Text2Speech为此 我使用了AVSpeechSynthesizer 到语音文本 但现在要求发生了变化 现在我需要将 HTML 文件数据转换为文本 例如HTML2Speech 我们可以想到的
  • 是否有针对不同屏幕尺寸的单独故事板?

    基本上我已经完成了一个应用程序 我唯一的问题是 ATM 机应用程序在设计时只考虑了 4 英寸显示屏 当在 3 5 英寸模拟器上运行时 应用程序会丢失 0 5 英寸 显然 那么我的问题是 如何在 Xcode 5 中为不同的屏幕尺寸设置不同的故
  • SwiftUI 列表与右侧的部分索引?

    是否可以有一个在右侧有索引的列表 就像下面 SwiftUI 中的示例一样 我在 SwiftUI 中做了这个 Contacts swift TestCalendar Created by Christopher Riner on 9 11 2
  • ios 用户如何取消 Facebook 登录?

    当用户到达此屏幕时 无法取消 我能做些什么 为了首先获得这个视图 我正在运行 NSMutableDictionary params NSMutableDictionary dictionaryWithObjectsAndKeys vid l
  • 将永久字符添加到 UITextField

    有没有办法将字母永久添加到 UITextField 中 用户无法删除它 我想添加一个字符 用户无法删除它 但他们仍然可以在之后添加字母 Cheers 附注这是适用于 iOS 的 A UITextField有一个名为 应该更改范围内的字符 的
  • 本地化现有的 iOS 应用程序

    我不敢相信以前没有人问过这个问题 要么是我的编码实践太无组织性 要么是我没有使用正确的关键字 How can I localize an existing iOS app that does not use NSLocalizedStrin
  • 使用 iPhone 中的地图视图读取当前位置名称

    我读取了当前位置的纬度和经度值 然后成功将该位置固定在 iPhone 中 现在我想使用这个纬度和经度值读取该地名 我使用以下代码来读取查找当前位置 void mapView MKMapView mapView1 didUpdateUserL
  • UIScrollView setZoomScale 将应用的旋转设置回零

    我已经从事地图替换工作很长一段时间了 整个事情的工作原理是UIScrollView由一个支持CATiledLayer 为了旋转我的地图 我旋转图层本身 使用CATransform3DMakeRotation 到目前为止效果很好 但如果我打电
  • 是否可以使用 Firebase 安排推送通知? [复制]

    这个问题在这里已经有答案了 我已经阅读了我能找到的所有文档 但仍然不知道这是否可行 如果我是用户 我可以安排特定时间的推送通知吗 Example 1 我是用户并打开应用程序 2 我允许通知并转到 pickerView 或其他任何内容 并设置
  • 如何接收有关与我共享的记录中所做更改的 CloudKit 通知?

    我有两个 iCloud 帐户 A and B 在两个不同的设备上 来自其中之一 A 我将 ckrecord 分享给另一个人 B 像这样 let controller UICloudSharingController controller p
  • 适用于 iPhone / iPad / iOS 的快速、精益 PDF 查看器 - 提示和提示?

    最近有很多关于绘制 PDF 的问题 是的 您可以使用UIWebView但这无法提供您所期望的优秀 PDF 查看器的性能和功能 您可以绘制PDF页面到 CALayer http www cocoabuilder com archive coc
  • 在 iOS 中,如何创建一个始终位于所有其他视图控制器之上的按钮?

    无论是否呈现模态或用户执行任何类型的转场 有没有办法让按钮在整个应用程序中 始终位于顶部 而不是屏幕顶部 有什么方法可以让这个按钮可拖动并可捕捉到屏幕上吗 我正在以苹果自己的辅助触摸作为此类按钮的示例 您可以通过创建自己的子类来做到这一点U
  • 如何让按钮闪烁?

    我试图在扫描正确时将按钮的颜色 只是闪烁 闪烁 更改为绿色 在出现问题时将按钮的颜色更改为红色 我可以用这样的视图来做到这一点 func flashBG UIView animateWithDuration 0 7 animations s
  • UIImageJPEGRepresentation 在视网膜显示屏上提供 2x 图像

    我有这段代码 它创建一个图像 然后向其添加一些效果并缩小其大小以使其largeThumbnail UIImage originalImage UIImage imageWithData self originalImage thumbnai
  • UIView晃动动画

    我试图在按下按钮时使 UIView 摇动 我正在调整我找到的代码http www cimgf com 2008 02 27 core animation tutorial window shake effect http www cimgf

随机推荐

  • 删除不在远程的分支

    gt git branch a master test remotes origin master remotes origin test 当有人删除remotes origin test 我的电脑上仍然可以看到它 我知道我可以做到这一点并
  • Java 正则表达式 (java.util.regex)。搜索美元符号

    我有一个搜索字符串 当它包含美元符号时 我想捕获此后的所有字符 但不包括点或后续的美元符号 后者将构成后续匹配 因此 对于这些搜索字符串中的任何一个 bla V N XYZ bla bla V N XYZ 我想返回 V N XYZ 如果搜索
  • 让 CMake include_directories SYSTEM dirs 前缀带有等于字符 (=)

    有没有办法让CMakeinclude directories使用 equals 包含系统目录前缀 特点 这样我就可以让 gcc 为关联的目录添加前缀 isysroot交叉编译的标志 当我尝试使用 equals 前缀 假定相对路径和当前源路径
  • 从 C# 应用程序打开 txt 文件

    以下代码假设从我的 C 应用程序打开 CMD 并打开文件 text txt 我尝试将文件路径设置为环境变量 但是当记事本打开时 它会查找 file txt 而不是 text txt 知道为什么吗 System Diagnostics Pro
  • 命名空间“React”没有导出成员“FC”。在“@types/reactour”中

    我正在一个反应 应用程序中工作 我有我的包 json文件如下 dependencies storybook addon backgrounds 3 4 8 storybook react 4 0 0 alpha 4 types d3 5 0
  • Jekyll自动重新加载

    第一次使用 Jekyll 看起来像是自动重新加载功能 运行jekyll auto server 仅由 Markdown 文件更新触发 这是正常行为吗 有什么方法可以更改其他类型的文件 例如 css 我使用的是 scss 或 html 文件
  • IIS 作为反向代理 - 压缩来自后端服务器的重写响应

    我正在实现一个反向代理 用于将请求路由到后端服务器 从功能上讲 一切正常 但我担心来自后端服务器的所有响应都会在未经压缩的情况下传输到客户端 Web 浏览器 设置如下 内部域上的后端服务器 不可公开访问 在以下位置托管 Web 应用程序ht
  • 使用 Javascript 在 Photoshop 中保存文件而不提示?

    我正在使用一个简单的脚本来编辑现有图像 无论我做什么 总会出现保存提示 我希望这是 100 自动化的 save 给我一个 saveAs 提示 将其保存为副本 close SaveOptions SAVECHANGES 只是给我一个通用的 您
  • NullInjectorError:没有 MatDialog 的提供者 - 尝试为 MatDialog 创建包装服务

    我是编码新手 也是 Angular 新手 所以我想我会寻求一些帮助 这是我的第一个问题 所以请耐心等待 我想为 Angular Material Dialog Service 创建一个包装服务 我只是想自学 这不是用于生产应用程序 所以我在
  • 你能改变颤动文本主题吗?

    如果主题在 main dart 中设置为 return MaterialApp title MY APP theme ThemeData primarySwatch Colors blue fontFamily Cabin textThem
  • 使用 SqlCommand 执行非查询,您可以获取通常发布到“消息”的文本吗?

    当使用 SqlCommand 执行非查询 例如数据库恢复 时 如果使用 Management Studio 是否可以以编程方式获取通常发布到 消息 选项卡的文本 如果是的话怎么办 是的 SqlCommand 对象上有一个名为 SqlInfo
  • AWS Lambda 性能问题

    我使用与 aws lambda java 集成的 aws api gateway 但我发现这种方法存在一些严重问题 删除服务器并让您的应用程序开箱即用的概念非常好 但这是我面临的问题 我的 lambda 正在做两件简单的事情 验证从客户端接
  • 日期 java.lang.IllegalArgumentException

    出现错误 java lang IllegalArgumentException 位于 java util Date parse 未知来源 位于 java util Date 未知来源 这是我的java代码 import java util
  • 如何强制为相同的输入打开第二个编辑器?

    我正在编写一个 Eclipse 插件 可以更轻松地编辑 Android 资源 当用户单击项目内的任何 XML 资源文件时 将打开一个编辑器 允许一次编辑项目中的所有资源 我想添加在单独的默认 Android 资源编辑器中打开同一文件的功能
  • 自动解决除部分文件外的git冲突

    我有以下 git 存储库 oooooooooooooo o o o V1 o V2 o o MyChange 我有一个git diff for V1 MyChange 现在我想合并所有内容V2并创建一个新的差异V2 MyChange 我如何
  • C# WPF - 拖动图像

    我试图获得一些简单的功能 从文件中获取图像 将其添加到画布中 然后允许用户左键单击 并按住 图像 然后将其拖动到画布上 即更新图像的地点 这是我到目前为止所拥有的 我应该添加什么 private void btnAddImage Click
  • 使用Python+Flask实现高效的会话变量服务器端缓存

    设想 主要网络应用程序与 Python Flask Flask 登录和Flask session对于基本会话变量 用户 ID 和会话 ID Flask session和限制 饼干 基于 Cookie 基本上仅保留在客户端 对于一些会定期读取
  • 如何按依赖关系对依赖对象进行排序

    我有一个收藏 List
  • 使用 Jackson 将 JSON 字符串或对象反序列化为 String 字段

    我正在使用 Jackson 2 库 并且正在尝试读取 JSON 响应 如下所示 value Hello 当值为空时 JSON 响应如下所示 value 我的模型 POJO 类看起来像这样 public class Hello private
  • @strongify 的原因是什么

    In 活性可可 https github com ReactiveCocoa ReactiveCocoa有宏可以防止循环引用 weakify和 strongify 据我了解 weakify做一些像我通常做的事情 即创建 weak在块中使用的