【问题标题】:where do you programmatically set text for UILabels in a UIView?你在哪里以编程方式在 UIView 中为 UILabel 设置文本?
【发布时间】:2011-11-23 06:53:03
【问题描述】:

您在哪里以编程方式为 UIView 中的 UILabel 设置文本?

我尝试了 init 方法,但这不起作用。它不设置文本。

我已将代码放在使用 UIView 的父控制器中,但对我来说,将其放在 UIView 代码中的某个位置会更有意义。

背景 - 以编程方式进行文本本地化

【问题讨论】:

  • 这个 UILabel 是一个 IB 对象吗?还是按语法创建的?
  • @ShantiKamichetty 它是一个 IB 对象 Shanti

标签: iphone ios uiview uiviewcontroller uilabel


【解决方案1】:

你的初始化代码应该在initWithFrame:,UIView的designated initializer

或者,您可以实现 awakeFromNib,一旦对象(例如视图)从 nib 文件中取消归档,就会调用它。

【讨论】:

  • 是的。 IB 对象将在加载 nib 期间初始化。因此他们将无法从 init 函数中访问它们。
【解决方案2】:

-init 方法中,来自 XIB 的出口尚不存在。 我在-viewDidLoad 例程中设置了那种控件的文本

【讨论】:

  • 但在我的情况下,我在 UIView 自定义类中(即不是视图控制器),所以我不会有“viewDidLoad”。我可以从父控制器设置它,但我试图找到一种方法将代码包含在 UIView 自定义类本身中(希望有意义)
猜你喜欢
  • 1970-01-01
  • 2017-07-04
  • 2019-06-08
  • 2017-08-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-11-21
  • 2020-05-21
相关资源
最近更新 更多