问题标签 [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.

0 投票
1 回答
2717 浏览

ios - awakeFromNib 与自定义 UITableViewCell 的 initWithFrame

我需要制作一个自定义 UITableViewCell,所以我创建了一个带有关联 nib 文件的子类。

我需要向它添加一些子视图。使用 nib 文件时,awakeFromNib 会替换 initWithFrame 吗?我[[NSBundle mainBundle] loadNibNamed:在我的cellForRowAtIndexPath方法中使用。

我像这样使用 initWithFrame 吗?

还是我像这样在 awakeFromNib 中这样做

0 投票
2 回答
302 浏览

ios - 显示类似于 UIAlertView 的警报视图

我正在尝试创建一个自定义的“警报视图”,没什么特别的,我只想在当前视图之上显示一个视图,就像 UIAlertView 一样。

现在问题来了...我在 nib 文件中创建了视图,现在我想在需要显示警报时分配/初始化视图。有人可以帮我吗?

这是我初始化视图的尝试……截至目前,当我分配/初始化一个新的警报视图时,这会使我的应用程序崩溃。

该应用程序通过告诉我视图不符合插座的键值来崩溃。我肯定有插座正确连接,除非我有一个“文件所有者”的事情搞砸了。

NSObject 0x14e49800> setValue:forUndefinedKey:]: 这个类不是键值编码兼容的键......

我做了这个方法来呈现视图,只是一个简单的 addSubview ...

0 投票
1 回答
219 浏览

ios - 如何从笔尖中唤醒

我想在 .xib 将要显示时获取每个控件,例如 UIButton/UILabel/UITextField。而且我知道我可以在 awakefromnib 中做到这一点,但是我怎样才能自动再次调用 awakefromnib。谢谢!

实际上,我的目标是在不遵循 iPad/Iphone 设置语言的情况下本地化 .xib。我使用https://github.com/AliSoftware/OHAutoNIBi18n进行本地化。希望有人能给我一个建议。再次感谢!

0 投票
1 回答
562 浏览

ios - iOS 8 中 Nib 加载的子视图的位置不正确

我有一个名为 CNJobMapView 的自定义类,它是 UIView 的子类。此自定义类从 nib 文件加载视图并将其添加为子视图。我这样做是为了可以将 UIView 对象添加到情节提要中的视图中,为其提供 CNJobMapView 自定义类,并且当我运行应用程序时它会出现在该视图中。

我在 CNJobMapView 的 awakeFromNib 方法中加载 nib,如下所示:

在这种情况下,self.contentView 是名为“CNJobMapView”的 nib 内的主视图。它是从 IB 链接的。

在 iOS 7 和 7.1 中,这一切都正常工作。它看起来像这样:

正确的位置

在 iOS 8 中,这不能正常工作。contentView 出现在完全错误的位置。像这样:

位置不正确

我不知道为什么它在 iOS 8 中有所不同。我希望得到一些帮助来解决这个问题!

0 投票
1 回答
754 浏览

objective-c - 从主 ViewController 中的 xib 文件调用 awakeFromNib

UITableView我在使用 xib 文件中有一个自定义单元格。我以编程方式创建了UILabel一个高度为 200,宽度为 50。当我NSLogcustomCell.m标签的宽度和高度中执行时,它给了我 w:50 和 h:200。但是当我执行时NSLogmainViewController.m它给了我 0高度和宽度。

不知道为什么会这样。我需要在mainViewController.m

这是我的代码:

customCell.m

mainViewController.m

如果我使用 xib 文件,不awakeFromNib应该被称为mainViewController.mat吗?viewDidLoad如果没有,我该如何调用它viewDidLoad

0 投票
2 回答
2748 浏览

objective-c - 如何在 mainViewController.m 中调用 awakeFromNib

我有一个包含自定义单元格的 xib 文件。我正在尝试访问在customCell.m.

这是我的代码:

customCell.m

mainViewController.m

0 投票
1 回答
257 浏览

ios - 如何获得从 awakeFromNib 到 mainViewController.m 的对象高度?

我以编程方式在 xib 文件中创建了UILable一个 - 类awakeFromNib,我试图在mainViewController.m. 我尝试使用 anNSBundle来加载 xib 文件,但它不起作用。还有其他方法我应该加载它吗?我需要打电话awakFromNibviewDidLoad

这是我的代码:

mainViewController.m

我需要NSLog显示200,而不是0

0 投票
3 回答
3322 浏览

ios - Objective-C/Swift (iOS) 什么时候在 View/ViewController 工作流程中应用自动约束?

我在弄清楚何时在视图设置过程中应用auto-contraintsa上的设置时遇到了一些问题。XIB

更多解释:

  • 我已经设置了XIB一个视图
  • 我将“模拟指标”大小设置为 iPhone 3.5 英寸
  • 我已在此视图内的子视图中添加了自动约束
  • 在视图控制器中,我根据方法中的子视图( IBOutlet)执行某些操作frames/boundsviewDidLoad
  • 在视图中,我根据方法中的子视图( IBOutlet)执行某些操作frames/boundsawakeFromNib

在这 2 种方法 ( ViewController::viewDidLoad and View::awakeFromNib) 中,已加载 IBOutlet 视图,但尚未应用约束。在使用更大的模拟器(如 iPhone 6 模拟器)时,实际框架仍然设置为 iPhone 3.5" 尺寸(宽 320)。

什么时候应用这些自动约束,什么时候应该进行需要子视图的实际框架/边界的任何必要操作?

我正在使用 XCode 6.3、Swift (1.2)

0 投票
1 回答
292 浏览

ios - Call DataSource method in awakeFromNib

So the question is like this:

I subclass 2 classes, which is UIView(name: Menu) and UIViewController(name: MainController). In Menu, i used xib file to create it layout. In MainController, i added Menu as subview like this and comform to protocol in Menu.

The layout works perfectly, there is no problem with it.

The problem is with DataSource. i call a datasource method in awakeFromNib

and that never even get called. After trying and trying i found out that, sliderMenu.datasource = self;is run after awakeFromNib. Thats is why the datasource method in MainController is never get called.

Question: How can i solve this problem?

0 投票
0 回答
319 浏览

ios - 一些 IBOutlets 在使用 IB 创建的视图中为零

我在 xib 中使用 IB 创建了一个视图,加载了该视图,当我尝试自定义容器(图像、标签、按钮等)时,一些容器是自定义的,而有些则不是。就像我在图像视图上设置图像一样,另一方面,自定义按钮/标签会失败。我正在方法中进行所有这些自定义awakeFromNib,此方法保留在使用 xib 创建的视图中。

我试图调试看看幕后发生了什么。每当创建来自 xib 的视图实例时,都会awakeFromNib调用下面的屏幕截图,图片的其余部分很好地呈现

/Users/sanjay/Desktop/psc2.tiff

如屏幕截图所示,我的代码被 awakeFromNib 方法中的断点暂停,调试器显示视图是在内存中创建的,它的子视图图像也被创建,但标签和按钮为 nil,还使用 ​​lldb 查看调试器中显示的内容是正确的。

现在我无法理解使用XIB创建一些容器/一些不在awakeFromNib方法中创建视图的这种行为,文档还说使用IBOutlets内部awakeFromNib进行任何自定义,因为时间awakeFromNib被称为视图已完全创建。但我想并非如此。

非常感谢解码/逆向工程调试的上述行为或使用 nib 创建视图时发生的任何帮助。

提前谢谢了。