iphone - 以编程方式更改 viewDidLoad() 中 UILabel 的文本

标签 iphone uilabel

如何在 View Controller 的 viewDidLoad 方法中更改 UILabel 的文本?

我的下面的代码不会更新用户界面。

   - (id)initWithNibName:(NSString *)nibNameOrNil 
                  bundle:(NSBundle *)nibBundleOrNil {
       if (self = [super initWithNibName:nibNameOrNil 
                         bundle:nibBundleOrNil]) {
           displayLabel = [[UILabel alloc] initWithFrame:CGRectMake(80, 20, 230, 40)];
           [self.view addSubview:displayLabel];
       }
       return self;
   }

//
- (void)viewDidLoad {
    [super viewDidLoad];
    displayLabel.text = @"abc";
}

最佳答案

您应该尝试在 viewDidLoad 中添加 subview 。

self.view 是一个 IBOutlet,在调用 initWithNibName 时它不会被加载到内存中,并且等于 nil。

viewDidLoad 在 View Controller 将其关联的 View 加载到内存后被调用。因此 self.view 将指向您在 nib 文件中创建的 View 。

关于iphone - 以编程方式更改 viewDidLoad() 中 UILabel 的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2505060/

相关文章:

iphone - 更改 MPMediaPickerController 导航栏的颜色,可能吗?

ios - 使用 UISegmentedControl 更改 UITableView 的数据源(就像 Twitter 那样)

ios - 在 UIView 中将一个 ImageView 和一个 UILabel 居中

swift - 为什么我不能在具有多个 UIControlState 的 UIButton 上调用 setTitle?

ios - 即使文本只有一行,多行 UILabel 高度也会增加

iphone - 调用者此时不拥有的对象的引用计数的错误递减

ios - UIButton 子类突出显示错误(即使在点击或触摸后突出显示仍然存在)

ios - Tableview 滚动崩溃应用程序

ios - SF UI Text-Light(New san francisco)字体不起作用

ios - 在具有框架问题的 iOS 中使用 swift 制作自定义 UILabel