NSView 初始化:-init: 与 -awakeFromNib:

2024-02-16

我有一个简单的课程MyView继承自NSView和实例变量NSImage * image;在里面。类的功能是在视图上绘制图像。

然而,在-drawRect:图像实例始终相等nil,如果它是在-init:功能而不是nil如果它是在-awakeFromNib:。日志显示两者-init: and -awakeFromNib:函数仅被调用一次。

Does -awakeFromNib:默认情况下重新初始化 GUI 组件?


否。没有默认实现awakeFromNib.

您的问题是您覆盖了错误的初始化方法。一个NSView's 指定的初始值设定项 http://developer.apple.com/library/mac/DOCUMENTATION/General/Conceptual/DevPedia-CocoaCore/MultipleInitializers.html#//apple_ref/doc/uid/TP40008195-CH33-SW2 is initWithFrame:。你的子类很简单init永远不会被呼叫,这就是为什么你的imageivar 没有指向任何东西。

您可以在以下任一位置初始化 ivarawakeFromNib or initWithFrame:。没什么区别。前者在后者之后调用,它是作为一个点提供的,您可以在其中插入需要与 nib 中的其他对象交互的初始化代码(通过您的IBOutlets).

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

NSView 初始化:-init: 与 -awakeFromNib: 的相关文章

  • 如何在操作表中添加日期选择器?

    IBAction showCatPicker if self catList nil self catList nil catList release self catList NSMutableArray alloc init self
  • iOS 8 UITableView 分隔符插入 0 不起作用

    我有一个应用程序 其中UITableView的分隔符插入设置为自定义值 右0 Left 0 这完美地适用于iOS 7 x 但是在iOS 8 0我看到分隔符插入设置为默认值15在右侧 即使在 xib 文件中它设置为0 它仍然显示不正确 我该如
  • 在 ios wifi 网络上查找对等点

    我试图弄清楚如何搜索登录到 wifi 网络且在特定端口上托管应用程序的其他设备 在不知道这些其他设备的地址甚至不知道它们托管的端口的情况下 如何检测它们的存在 一旦发现 我应该能够联系该设备并与其建立连接 最标准的 iOS方式 是使用Bon
  • 在基于视图的 NSTableView 中,如何通过单击使控件成为第一响应者?

    基于视图的 NSTableView 似乎只有标准行为 为了使表内的文本字段成为第一响应者 用户必须双击或单击并 保持冷静 然而 考虑到基于视图的 NSTableViews 提供的灵活性 这种行为并不总是可取的 因为现在可能有很多不同且复杂的
  • 如何将媒体附件添加到 iOS 10 应用程序中的推送通知中?

    有多个示例 您应该如何设置项目来添加使用 媒体附件 技术来显示图像的丰富通知 我已经阅读了其中的大部分内容 但我错过了一些内容 因为我的项目没有使用此有效负载显示任何丰富的通知 使用 APNS Tool 和 Boodle 进行测试 aps
  • 动态框架中未定义的架构符号

    我正在开发一个 iOS 框架 该框架包含多个第三方框架并使用 UnitySendMessage C 方法与 Unity 进行通信 我想创建一个动态框架 支持 iOS8 但我偶然发现以下编译错误 Undefined symbols for a
  • 动画导航控制器“后退”按钮

    我在导航控制器层次结构中的视图控制器上有一个自定义按钮 按下该按钮时 会弹出可见的视图控制器 我想使用 UIView 的transform属性来动画关闭视图控制器 它有效 但如果我使用 popViewControllerAnimated Y
  • iOS7 无法隐藏状态栏

    我刚刚将我的 iPhone 5 iOS 7 升级到了四个测试版 现在 当我在这台 iPhone 上通过 Xcode 5 运行我的应用程序时 状态栏不会隐藏 尽管它应该隐藏 不工作 UIApplication sharedApplicatio
  • 在 Swift 中使用 Obj-C 完成块

    在 Objective C 中 我有一个完成块类定义为 File h typedef void MYCompletionBlock BOOL success NSDictionary result NSError error 然后 在 Sw
  • 使用 NSCoder 编码 CGPoint 结构

    如何编码和解码CGPoint结构使用NSCoder 编码 CGPoint point point from somewhere NSValue pointValue NSValue value point withObjCType enco
  • 在 Objective-C 中比较两次的最好/最简单的方法是什么?

    我有一个时间的字符串表示形式 例如 11 13 AM 这是使用 NSDateFormatter 和 stringFromDate 方法生成的 我想将此时间与当前时间进行比较 但是当我使用 dateFromString 方法将字符串转回日期时
  • 有没有办法在没有 QApplication::exec() 的情况下使用 Qt?

    有没有一种安全的方法可以在不调用 QApplication exec 的情况下使用 Qt 我有许多不同的对象正在对多个资源执行长期进程 至少其中一个正在与 Web 应用程序服务器进行通信 我正在制作一个 GUI 应用程序 提示用户在正确的时
  • 在 Cocoa/Carbon 下调试 NULL CGContext

    在执行程序期间 我在 XCode 调试控制台中得到以下输出
  • 在实现文件中声明接口(Objective-C)

    在上一个版本的 xCode 4 3 中 我看到了预定义模板 例如我们的 Master Detail 模板 其中接口声明是在 m 文件中进行的 例如 在文件 MyFile h 中有 interface MyFile property nona
  • Winforms 风格/UI 外观和感觉提示

    从多年的 asp net 开发回到 winforms 应用程序 寻找有关如何 设计 winforms 的建议和技巧 类似于我在 asp net 中使用 CSS 母版页的方式 我对如何在一处更新某些类型的控件的字体 颜色感兴趣 如何保持布局的
  • 如何使用编译时间作为自动版本控制信息?

    当程序被编译以获得一种自动版本信息时 是否有任何常量或 pragma来获取时间和日期 DATE and TIME 是预定义的宏 将分别扩展到当前日期和时间
  • Objective C - ARC - 何时使用@autoreleasepool

    我读了一些关于 ARC 的文章 看到了这个 interface Address NSObject public NSString city end implementation Address Address init NSString c
  • 使用 PHP 和 jSON 从 MySQL 获取 UIImage

    我正在开发一个小型新闻阅读器 它通过对 URL 执行 POST 请求来从网站检索信息 响应是一个带有未读新闻的 JSON 对象 例如 应用程序上的最新新闻的时间戳为 2013 03 01 当用户刷新表时 它会发布 domain com ap
  • 为什么 WebView 中的 dataWithPDFInsideRect 不能在 Mavericks 上创建高质量的 PDF?

    Run 示例项目 https github com tvarghese TestWebView并观察桌面上生成的输出 PDF 名为保存网页 pdf 粘贴感兴趣的代码片段 NSURL url NSBundle mainBundle URLFo
  • 从 iOS 中的 App Delegate 调用当前视图控制器中的方法

    我有两个视图控制器 BuildingsViewController 和 RoomsViewController 它们都使用应用程序委托中名为上传的函数 上传函数基本上执行一个 HTTP 请求 如果成功或不成功 都会触发 uialertvie

随机推荐

  • python Flask如何将动态参数传递给装饰器

    我正在使用 python Flask 框架 我写了一个装饰器 它需要一个参数 并且这个参数将是动态的 我的装饰器如下所示 将获得一个密钥 并使用该密钥从 Redis 获取数据 def redis hash shop style key de
  • JOINed 表中的条件显示错误 CakePHP

    我有两张桌子employee personals存储员工的所有个人记录的地方telephone bills其中存储每月支付给特定员工的电话账单 现在在我的employeePersonalsController php我有一个函数叫做api
  • Excel、Vba 宏可将形状“移动”到不同的形状,无需复制和粘贴

    我想将形状移动到不同的工作表 而不在宏中使用复制和粘贴 还有其他方法可以做到这一点吗 如果形状是图表对象 您只需更改其位置即可 ActiveChart Location Where xlLocationAsObject Name Sheet
  • 我可以将编译的系统库(例如 libxml2)合并到可以部署到 Heroku 的 gem(例如 nokogiri)中吗?

    Nokogiri 在与 UTF 8 字符之间进行转换时遇到问题 结果发现该问题来自 libxml2 特别是版本 2 7 6 这是 Ubuntu 10 04 LTS 上支持的最高版本 该错误在 2 7 7 及更高版本中得到修复 但由于我们的应
  • 如何使用张量流和卷积神经网络检测和定位对象?

    我的问题陈述如下 使用 Tensorflow 和卷积神经网络进行对象检测和定位 我做了什么 我已经使用 tflearn 库完成了从图像中进行猫检测 我成功地使用 25000 张猫图像训练了一个模型 并且其工作良好且准确 Current Re
  • 日志记录挂钩的挂钩过程从未被调用

    我正在尝试创建一个简单的应用程序来记录和播放一系列键盘和鼠标命令 宏 阅读文档并得出结论 最合适的实现 如果不是唯一的实现 是设置 Windows 日志记录挂钩 WH JOURNALRECORD 并用日志回放一个 WH JOURNAL PL
  • C++ 将 float* 转换为 glm::vec3

    如何以表单形式投射浮点数数组float to glm vec3 我以为我以前做过 但我丢失了硬盘 我尝试了一些C风格static cast但我似乎无法让它工作 From float to vec3 float data 1 2 3 glm
  • 枚举*所有*哈密尔顿路径

    我知道以前有人问过这个问题 但我没有在任何帖子中找到答案 有人可以建议我一个枚举图中所有哈密顿路径的算法吗 一点背景知识 我正在研究一个问题 其中我必须枚举每个哈密顿路径 进行一些分析并返回结果 为此 我需要能够枚举所有可能的哈密尔顿路径
  • Bootstrap 4 - 如何在移动设备上更改顺序?

    我正在使用 Bootstrap 4 制作一个由两列组成的响应式布局 两列总共有 9 个 div 第一列有 4 个 第二列有 5 个 如果断点低于 LG 我想更改列内 div 的顺序 这是我想要实现的解释和正确的顺序 我目前拥有的 div c
  • 如何在弹性搜索聚合中使用分页(大小和来源)?

    如何在elasticsearch聚合中使用分页 大小和来自 我在聚合中使用了大小和来自 它引发了exmaple异常 我想查询像 GET index nameorder search size 0 query filtered query b
  • 将数学字符串转换为 int

    有没有一种简单的方法可以获取 5 4 等字符串并返回 20 最简单的方法是使用Rhino JavaScript 引擎 http java sun com developer technicalArticles J2SE Desktop sc
  • Angular.js 中基于 OpenID 的身份验证(使用 Flask 后端)

    一 如何实现 Angular js 中基于 OpenID 的身份验证 使用 Flask 后端 Web 应用程序 看起来 Angular js 代码需要合并逻辑 就像这个例子在这里找到的 http espeo pl authenticatio
  • 类型错误:mel() 接受 0 个位置参数,但给出了 5 个

    当我使用 Tacotron 培训笔记本时 我收到一条错误消息 说明了这一点 Traceback most recent call last
  • 您可以在枚举类中使用按位运算符而不进行强制转换吗?

    我喜欢使用枚举类 但有时我将它们用作标志 并且我必须不断地转换为int如果我想使用按位运算符 有没有办法在不铸造的情况下做到这一点 我认为您无法为它们定义运算符 如果我有采用枚举类的函数 我必须这样做吗 enum class Flags F
  • mysql(i)_real_escape_string,安全可靠吗?

    function Query args func get args if sizeof args gt 0 query args 0 for i 1 i lt sizeof args i query preg replace mysql r
  • 如何制作一个使用全局类型但不使用它来扩展项目的 NPM 包?

    问题 任何在许多不同文件中重用大量类型的项目都可以使用在脚本文件 这些类型在整个项目中全局可见 不需要导入 请参阅官方手册 https www typescriptlang org docs handbook modules html 在
  • 编辑 UI 的 task.Wait() 上出现死锁

    我试图在这里找到一些解决我的问题的方法 但没有结果 或者我只是没有得到正确的结果 所以如果有人可以帮助 解释我将非常感激 我正在使用 Win Form 为系统管理员开发一个工具 现在我需要在选定的后台运行的计算机上创建连续的 ping UI
  • 有没有办法改变散点图上的原点轴(零线)?

    有没有办法改变散点图上的轴 假设将轴从 0 0 即 零线 移动到 3 3 之类的位置并制作象限图 我尝试将 xaxis 和 yaxis 上的 zeroline 值设置为False 然后从 shapes 的两个轴上绘制两条常量线 但我想知道是
  • NodeJS MySQL 转储

    我尝试编写一个基本的 cron 脚本来运行和 转储 mysql 数据库 由于某种原因 当它 成功保存文件 时 它确实创建了该文件 但它是空的 如果我不保存文件 而是执行 console log 它会打印一个空字符串 对我可能做错了什么有什么
  • NSView 初始化:-init: 与 -awakeFromNib:

    我有一个简单的课程MyView继承自NSView和实例变量NSImage image 在里面 类的功能是在视图上绘制图像 然而 在 drawRect 图像实例始终相等nil 如果它是在 init 功能而不是nil如果它是在 awakeFro