PushViewController 是否保留控制器?

2023-12-30

我正在努力找出 PushViewController 是否保留控制器,目前我有以下代码(有效)...

ColorController *colorController = [[ColorController alloc] initWithNibName:nibColor bundle:nil];
[[self navigationController] pushViewController:colorController animated:YES];
[colorController release];

但我正在考虑删除该版本并添加自动版本...

ColorController *colorController = [[[ColorController alloc] initWithNibName:nibColor bundle:nil] autorelease];
[[self navigationController] pushViewController:colorController animated:YES];

非常感激

Gary


这没什么作用...

ColorController *colorController = [[ColorController alloc] initWithNibName:nibColor bundle:nil];
[[[self navigationController] pushViewController:colorController animated:YES] autorelease];

您正在自动释放pushViewController:animated:的返回值,该值是void。

您的第一个片段是有效且正确的。 PushViewController:确实保留了推送的控制器。

编辑:在更新的代码中,两个示例之间几乎没有什么区别。两者都保持适当的保留计数。然而,除非必要,否则避免使用 autoRelease 是“最佳实践”(特别是在内存敏感区域,如 iPhone)。这有助于您的应用程序保持更可预测和更易于管理的内存占用。

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

PushViewController 是否保留控制器? 的相关文章

  • Objective-C中如何使继承的类能够看到父类的隐藏方法[重复]

    这个问题在这里已经有答案了 我有两个类 Class1 和 Class2 第二个类继承自第一个类 我需要重写 Class1 的 update 方法来实现我的目标 继承方法中 update方法的改变是在代码中间进行的 所以我不能使用 超级更新
  • iphone:在 UIWebView 之上查看?

    我正在开发一个浏览器应用程序 并且 UIWebView 顶部有一个地址栏 在 MobileSafari 上 如果向下滚动 地址栏开始移动到顶部 移出屏幕 并且 UIWebView 不会滚动 只有当地址栏完全消失时 它才开始滚动 我也想在我的
  • 两者都实现了类。将使用两者之一

    我有一个项目 它具有使用 SocketRocket 的依赖项 通过 CocoaPods 安装 并从 HeapAnalytics 导入了静态库 显然 HeapAnalytics 库已经使用了 SocketRocket 编译时没有出现错误 但在
  • CBPeripheral 名称有时为 null

    我正在开发一个应用程序来与蓝牙 LE 外围设备进行通信 我目前正在测试的外围设备是其中之一these http www ti com tool cc2540dk mini 有趣的是 有时当我发现它时 我会得到它的正确名称 SimpleBLE
  • 防止UIScrollView的UIPanGestureRecognizer遮挡UIScreenEdgePanGestureRecognizer

    我有一个UIScrollView它填满了我应用程序的一页上的屏幕 但我希望允许用户从屏幕边缘平移以显示其后面的视图 问题是 UIScrollView 窃取了我的触摸UIScreenEdgePanGestureRecognizer在屏幕边缘
  • UIWebView 中的 PDF

    我正在创建一个杂志应用程序 我在 UIWebView 中显示杂志的每一页 不过 Web 视图不会用 PDF 填满屏幕 它周围有一个边界 我怎样才能全屏显示它 我还没有使用 UIWebView 尝试过此操作 但您也许可以执行类似的操作来以编程
  • iPhone 崩溃日志?

    我已经配置了一部 iPhone 并让用户安装了该应用程序 它失败 是否有崩溃日志可以让我看到 iPhone 上失败的原因 Ian 如果您可以使用 xcode 将 iPhone 连接到计算机 则在管理器窗口中它会显示每个应用程序崩溃的崩溃日志
  • 是什么导致了这个 iPhone 崩溃日志?

    我有点卡住了 需要解决这个问题 因为我的一个应用程序出现了随机崩溃 而这些崩溃并不总是能够重现 这是崩溃日志之一 Incident Identifier 59865612 9F00 44EA 9474 2BF607AD662E CrashR
  • UIDatePickerModeCountDownTimer模式中的UIDatePicker:如何更改为分钟和秒模式?

    我在故事板中添加了 UIDatePicker 并将模式设置为 CountDownTimer 它只显示小时和分钟 但我需要的是分钟和秒模式 我不需要小时列 需要分钟和秒列 我尝试更改间隔 但最小值是 1 分钟 是否可以 我怎样才能做到这一点
  • UISplitViewController - 推送模态视图

    使用 UISplitViewController 时推送模态视图的最佳实践是什么 您会从 RootViewController DetailViewController 还是直接从应用程序委托推送 理想情况下 我想要实现的功能是在基于某些条
  • 使用超类初始化器初始化类

    我有两个类 一个是另一个的子类 比如说Animal and Dog 超类有一些初始化器 比如initAnimal 子类有一些初始化器 比如initDog 问题是 从编译器的角度来看 做类似的事情是完全合法的Dog adog Dog allo
  • 如何将 NSIndexpath 转换为 NSInteger 或简单的 int?

    我需要将 nsindexpath var 转换为 NsInteger 或简单的 int 例如 int rowIndex mGoogleBaseTable selectedRow mGoogleBaseTable is a NSTable t
  • 使用 Cocoa 获取无法安装的驱动器列表

    我想获取在 OS X 下使用 Cocoa Objective C 无法安装 弹出的驱动器列表 我希望 NSWorkspace getFileSystemInfoForPath 能帮助我 NSArray listOfMedia NSWorks
  • 您将如何实现一个检测水平滑动以允许分页的 UITableView?

    我想实现一个 UITableView 一次显示 20 行 但考虑到我实际上可能要展示 120 个项目 我想使用某种分页来处理这个问题 使用前 20 项填充表 当用户从右向左滑动时 用接下来的 20 个项目重新加载 UITableView 从
  • 避免“在此块中强烈捕获自身可能会导致保留周期”消息

    每次我必须在块内使用全局变量或属性时 如下所示 self save if isItSaving NO self saveMyFile 我必须像这样重写 BOOL iis isItSaving id myself self self save
  • iPhone 快照,包括键盘

    我正在寻找拍摄整个 iPhone 屏幕 包括键盘 的正确方法 我找到了一些截取屏幕的代码 CGRect screenCaptureRect UIScreen mainScreen bounds UIView viewWhereYouWant
  • 重置转换后的 UIView 的原点会变得疯狂

    我使用 UIView transform 旋转 缩放 UIVIew 效果很好 然而 一旦我更改视图的框架原点 即使我没有执行任何进一步的 CGAffineTransforms 视图的内容也会开始 奇怪 地缩放 为什么会出现这种情况 我该如何
  • Xcode 3.1.4 中内置分析器

    我想知道 Xcode 3 1 4 中内置的分析器是否使得单独使用 LLVM Clang 静态分析器变得多余 请参考这里的原文 使用 LLVM Clang 静态分析器查找内存泄漏 http www fruitstandsoftware com
  • 自定义 MKAnnotationView - 如何捕获触摸而不忽略标注?

    我有一个自定义 MKAnnotationView 子类 它完全按照我想要的方式显示视图 在那个视图中 我有一个按钮 我想捕获按钮上的事件来执行操作 这很好用 但是 我不希望标注被忽略或消失 基本上 触摸标注中的按钮将开始播放声音 但我想保留
  • 按下表格视图单元格时更改视图?

    我需要帮助 当我的 tableView 的单元格被选择时 我希望该单元格转到它自己的页面 我不希望每个单元格都转到同一页面 我尝试使用 FirstFolderViewController first FirstFolderViewContr

随机推荐

  • Vue.js 组件 prop 没有 2 路绑定?

    I found 这个问题是类似的 https stackoverflow com questions 44790842 vuejs right way to edit prop without changing parent data 但它
  • 为什么静态类在 Java 中是非法的?

    我正在开发一个 Android 应用程序 但遇到了一些困难 我不断收到错误 Illegal modifier for the class FavsPopupFragment only public abstract final are pe
  • 获取生成器的子集

    我有一个生成器函数 想从中获取前十项 我的第一次尝试是 my generator 10 正如错误告诉我的那样 这不起作用 因为生成器不可订阅 现在我已经解决了这个问题 list my generator 10 这是有效的 因为它将生成器转换
  • AWS ALB + Django + Gunicorn +- Nginx?

    我正在 AWS 中构建一个环境来托管 django 应用程序 我试图弄清楚是否应该使用 nginx 作为构建的一部分 我在下面列出了一些不同的环境 以供示例 比较之用 所有环境都使用 AWS ALB ENV 1 ALB gt dockerc
  • nptl SIGCONT 和线程调度

    我正在尝试移植依赖于 SIGCONT 的代码来停止应用程序的某些线程 对于当前的 linux nptl 实现 似乎不能依赖 2 6 x 内核中的实现 我正在尝试设计一种方法来停止其他线程 目前我只能考虑互斥体和条件变量 任何提示表示赞赏 如
  • PHP 中JavaScript 的decodeURIComponent 的等价物是什么?

    我有一个包含 unicode 字符的字符串 我正在通过 HTTP 传输该字符串 该字符串是用 Javascript 编码的encodeURIcomponent php 中是否有与 Javascript 等效的函数decodeURICompo
  • Google Play 说我使用 Android Studio Build->Generate Signed APK 构建的 APK 是可调试的

    我收到消息 您上传了可调试的 APK 出于安全原因 您需要先禁用调试 然后才能在 Google Play 中发布 了解有关可调试 APK 的更多信息 我使用 Android Studio 生成 APK 构建 gt 生成签名 APK 我创建了
  • Tmux:失去焦点时自动隐藏面板

    我最近开始使用 tmux 进行 Vim 编辑 在 PyCharm 中 我曾经在底部有一个终端 我可以通过几次按键来切换屏幕 我希望 tmux 具有相同的功能 在 Vim 中全屏编辑代码 然后当我需要运行命令时 直接转到屏幕底部的终端窗格 然
  • 我的服务器可以同时运行多少个 php 脚本?

    我有一个最终用户可以访问的脚本 该脚本可以进行以下调用 exec php orderWatcher php insertedId gt dev null 在 orderWatcher php 中我做了一些需要很长时间的操作 if check
  • 如何通过命令行向sql脚本传递参数

    有一个要求 我试图自动化项目中的一个流程 其中需要运行 sql 来进行日常报告 sql 如下所示 这是最简单的形式 但我的 sql 有 400 行 下面只是获取结果的示例 test sql select from table where c
  • .query 字符串中的美元符号 ('$') 是什么意思?

    什么是 该声明中的符号含义 SQL Query gt Update Data client query UPDATE items SET text 1 complete 2 WHERE id 3 data text data complet
  • 按索引选择多索引数据框中的行而不丢失任何级别

    我想选择一个名为 Mid 的行 而不丢失它的索引 Site 以下代码显示了数据框 m commodity price max maxperstep Site Commodity Type Mid Biomass Stock 6 0 inf
  • spring数据休息更新产生交叉连接sql错误

    我想使用 Spring Data Rest 来更新某些用户的行 但在运行时此查询在查询中添加了奇怪的 交叉联接 Spring数据休息方法 Modifying Transactional Query Update Notification n
  • 如何使用python的telnetlib从设备获取固定时间段的数据?

    我正在通过 telnet 连接到硬件设备 该设备的 I O 非常简单 因此 我向它提交一个命令 然后设备每秒一次一次输出一行数据 每行仅包含一个数字 所以我的问题是这样的 如果我使用python的telnetlib连接到这个设备 我如何获取
  • 防止双重投票

    我正在创建一个 Web 应用程序 用户将通过单击 赞成 或 反对 来为某些候选人投票 并且这些用户在该网站上没有任何帐户 最好使用什么技术 是否有必要使用验证码来进一步防范垃圾邮件 预计投票数将达到数百万 主题也不是很关键 只要我得到 95
  • 基本的 javascript 流程 - 在各种浏览器中

    我试图通过一个非常简单的 JavaScript 示例来学习 JavaScript 中的流程 但是三种浏览器 Chrome IE 和 Firefox 这三种浏览器都显示不同的流程模式和不同的最终结果 我知道会出现跨浏览器问题 但这个问题非常简
  • 将 bsxfun 与匿名函数一起使用

    在尝试理解 bsxfun 函数之后 我尝试在脚本中实现它以避免循环 我试图检查数组中的每个单独元素是否包含在一个矩阵中 返回一个与分别包含 1 和 0 的初始数组大小相同的矩阵 我创建的匿名函数是 myfunction x y sum an
  • 在 jQuery 对话框中时,asp.net 表单控件不可读,如何修复它?

    我有一个带刺的 我有一个 ASP NET Web 表单页面 在页面中 我有一个 div 标签 我已将其设置为用作 jQuery 对话框 div 中是一些 jQuery 控件 我打开对话框并单击其中一个按钮开始回发 当页面回发时 隐藏代码尚未
  • 局部变量以下划线开头是个好习惯吗?

    我刚刚接触 Ruby 并且来自 Java 和 C C 环境 在用 Ruby 编写第一个小项目时 我不知何故习惯了让所有局部变量都以下划线开头 我想我这样做的主要动机是更好的可读性以及与方法调用的区别 原则上只有三种类型的变量 global
  • PushViewController 是否保留控制器?

    我正在努力找出 PushViewController 是否保留控制器 目前我有以下代码 有效 ColorController colorController ColorController alloc initWithNibName nib