你在哪里以编程方式在 UIView 中为 UILabel 设置文本?
Posted
技术标签:
【中文标题】你在哪里以编程方式在 UIView 中为 UILabel 设置文本?【英文标题】:where do you programmatically set text for UILabels in a UIView? 【发布时间】:2011-11-23 06:53:03 【问题描述】:您在哪里以编程方式为 UIView 中的 UILabel 设置文本?
我尝试了 init 方法,但这不起作用。它不设置文本。
我已将代码放在使用 UIView 的父控制器中,但对我来说,将其放在 UIView 代码中的某个位置会更有意义。
背景 - 以编程方式进行文本本地化
【问题讨论】:
这个 UILabel 是一个 IB 对象吗?还是按语法创建的? @ShantiKamichetty 它是一个 IB 对象 Shanti 【参考方案1】:你的初始化代码应该在initWithFrame:
,UIView的designated initializer。
或者,您可以实现 awakeFromNib
,一旦对象(例如视图)从 nib 文件中取消归档,就会调用它。
【讨论】:
是的。 IB 对象将在加载 nib 期间初始化。因此他们将无法从 init 函数中访问它们。【参考方案2】:在 -init
方法中,来自 XIB 的出口尚不存在。
我在-viewDidLoad
例程中设置了那种控件的文本
【讨论】:
但在我的情况下,我在 UIView 自定义类中(即不是视图控制器),所以我不会有“viewDidLoad”。我可以从父控制器设置它,但我试图找到一种方法将代码包含在 UIView 自定义类本身中(希望有意义)以上是关于你在哪里以编程方式在 UIView 中为 UILabel 设置文本?的主要内容,如果未能解决你的问题,请参考以下文章
iPhone 在 IB 中为自定义 UIView 创建 UIButton