问题标签 [awakefromnib]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
objective-c - Windows 的加载方式是否与 10.10 -> 10.11 不同?
我们有一个要显示的窗口,在 10.11 中,它按我们预期的方式显示。
我们在 中设置窗口内视图的所有属性-windowDidLoad
,当窗口显示时,这些按钮具有正确的颜色:
但是,在 10.10 中使用相同的代码,颜色被设置为此按钮子类的默认值
有趣的是,如果您与按钮交互,它们会立即重绘并具有正确的白色背景
但是,如果我们将代码移动到 -awakeFromNib,它在两个操作系统上看起来都不错,只要显示窗口
当窗口从 10.10->10.11 显示时,它们是否发生了变化?还是我们错过了其他东西?
以前好像是这样的:
-awakeFromNib -> 显示窗口
现在看起来像:
-windowDidLoad -> 显示窗口
编辑:这是该backgroundColor
属性的使用方式:
首先,根据按钮状态获取颜色
然后在 中-drawRect
,调用这个方法:
ios - Nib load failure when presenting its view controller
I have this function in a class that inherits from NSObject
:
I had this working in one of my iOS projects before updating to Xcode 8
and Swift 3
language, but now when I run the app I get a crash when vc.present(customDialog, animated: true, completion: nil)
line is reached. I get this message in log console:
Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Could not load NIB in bundle: 'NSBundle /MyApp.app> (loaded)' with name 'CustomDialogViewController''
I don't understand what it is happening, since let customDialog = CustomDialogViewController(nibName: "CustomDialogViewController", bundle: bundle)
line doesn't crash and it seems that I get a CustomDialogViewController
object.
Does somebody could help me with this issue? Thanks
ios - UIKit - awakeFromNib 如果没有实现
从 Xcode 8 更新它只是注意到,对于内部没有内容UITableViewCell
的awakeFromNib
方法(在使用 xib 文件添加自定义单元类时自动创建),给了我以下警告。
方法可能缺少 [super awakeFromNib] 调用
从这个链接,明白了我们为什么要实现超类方法。但是我需要知道如果我们不实施这种方法会产生什么影响。
awakeFromNib
如果没有实现 UIKit 类的任何子类,是否存在任何性能问题或任何其他类型的问题?
ios - awakeFromNib 中的变量为零
我创建了一个使用对象 ConnectDetailItem 实例化的自定义 UIView。
我的自定义视图代码:
在awakeFromNib()
,connectDetailItem
是nil
。为什么 ?
我实例化我的观点是这样的:let viewInfos = InfosConnectView(connectDetailsItem: self.connectDetailsItem, frame: CGRect(x: 0, y: 9, width: self.view.frame.width, height: 200))
我设置了断点,在进入 awakeFromNib 函数之前 connectDetailItem 不为零。
ios - 当我们可以在 awakeFromNib 中转储所有内容时,为什么还要使用 init(coder)?
我读了 init coder aDecoder 到底是什么?
但这并不能解释为什么不把所有东西都放在里面awakeFromNib
而忘记使用init(coder aCoder : NSCoder)
?
在接受的答案的评论中,法蒂说:
“有时你不能那样做”。您通常可以但并非总是如此
谁能对此提供更多解释?
ios - awakeFromNib 不会在带有 xib 文件的 UIViewController 子类中被调用
也许你看到这个问题是一种重复的问题。但我想问一个新问题,因为其他问题都是古老的。我正在使用 Xcode 8.3.1 的 iOS 10.3。
就我而言,我使用 xib 子类化 UIViewController,一切看起来都很好,但我看到该函数awakeFromNib()
没有被调用,我猜它必须被调用。我尝试了几个项目,甚至awakeAfter(using aDecoder: NSCoder)
调用了函数,但没有awakeFromNib()
。iOS sdk中有什么原因吗?
谢谢你。
ios - nib/xib 文件是否打算在不同的视图控制器中使用?
我在 youtube 上观看了多个视频,并购买了两本带有解释的书 (O'Reilly)。
似乎一个 nib 文件总是在一个视图控制器中使用。文件所有者通常是实现该 nib 的视图控制器。
我找不到在多个视图控制器中使用 nib 文件的示例。
我确实遇到了一些找到解决此问题的方法的帖子,但是这些帖子很旧,而且很多人都留下了警告。
我最初使用 nib 文件的冲动是因为我有一个在多个 tableViewControllers 中使用的表格视图单元格。tableViewCell 是在情节提要中的 TableViewController 之一中进行原型设计的。
我认为创建一个 nib 会将该单元格与一个特定的 TableViewController 分离。
我不能说我真的理解 nib 文件的用途。它似乎与故事板非常相似。
我最终在代码中创建了 tableViewCell 并在整个项目中重用它。
所以我的问题是 nib 文件是用来做什么的?
它们是否用于将视图与特定视图控制器分离?
它们是否用于避免一个 ViewController 中的重复?
任何见解都会有所帮助。
ios - 处理作为文件所有者的对象的 awakeFromNib
我知道在实例化某些视图时为什么awakeFromNib
不调用许多相关问题。从 Nib 唤醒某个视图的消息被发送到视图本身,并且该消息不会传递给文件的所有者。我看到了为什么我的 awakeFromNib 不会着火?.
那么,如果你创建一个视图的实例,它的文件所有者本身就在 xib 文件中,会发生什么?
换句话说,您有自己的自定义视图,名为 MyCustomView.swift 和 MyCustomView.xib。在 xib 文件中,您将文件的所有者设置为MyCustomView
. 那么,当您创建 的实例时MyCustomView
,awakeFromNib
会调用吗?就我而言,awakeFromNib
似乎没有被调用。但是,视图本身确实是实例化的。所以,对我来说,awakeFromNib
没有被调用是很奇怪的。
谁能解释一下这件事?
仅供参考:我准备好了BaseCustomView.swift
。
BaseCustomView
有两个init
。
和
而且commonInit()
是这样的。
而 customView 只是覆盖 this 的类BaseCustomView
。另外,customView 的 File 的 Owner 就是customView
它自己。
更多编辑:自定义视图类是这样的。实际上awakeFromNib()
没有调用。