屏幕上显示了视图,但self.view.window仍然为零

WangYudong

我有一个ViewController,FooViewController可以说它有一个属性:

@property (nonatomic, strong) NSAttributedString *foo;

我想在视图出现时更新UI,所以viewDidLoad和foosetter就像这样:

- (void)viewDidLoad
{
    [super viewDidLoad];
    self.foo = [[NSAttributedString alloc] initWithString:@"test" attributes:@{ NSForegroundColorAttributeName : [UIColor greenColor]} ];
}

- (void)setFoo:(NSAttributedString *)foo
{
    _foo = foo;
    if (self.view.window) [self updateUI];
}

我期望updateUI在屏幕上显示视图时会调用method,但是没有。仅当我删除时if (self.view.window)调用该方法。这是什么问题?

谢谢

Trojanfoe

将代码移至viewDidAppear(或只是调用的位[self updateUI])。

加载仅表示已从NIB反序列化,而出现则表示它是视图层次结构的一部分。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

self.window总是为零

为什么显示后窗口的位置仍然为零?

Table View Cell 类的视图显示为 nil

重绘viewDidLoad()上self.view内部的视图迅速?

即使 Flutter 中父小部件的高度为零,图标仍然显示

在屏幕上为视图定义相等的高度?

图片在设备上显示为黑色> Image View Android

如何将 anchorPoint of view 设置为 0.5 , 0.5 以获取屏幕中心的视图?(不是场景)

如何在DropWizard视图上设置cookie并仍然返回View?

填充/边距/阴影在桌面视图中消失,但在检查中显示。错误在所有屏幕尺寸上仍然存在

在每个屏幕上仍然显示Flutter firebase_admob横幅

Xcode 11.1 升级奇怪 - 主屏幕显示为模态视图

NSDateFormatter显示为零

'android.view.Window$Callback android.view.Window.getCallback()' 上的 Java 空指针异常

Android:View.inflate在屏幕上不显示第二个布局

group_concat上的MySQL varchar列在View中显示为文本

将具有屏幕视图的另一个类的委托设置为self

AngularJS ng-view不显示视图

Laravel View Composer为每个视图复制SQL查询

在UIViewControllerAnimatedTransitioning中,“ to ViewController”具有视图,但“ to View”为nil

如何在整个屏幕上为用户显示文本

如何始终在屏幕上显示视图

显示计数为零的行

SQL显示结果为零

ServicePulse显示零错误,但仍然有错误

Image View xcode上的图像视图

无法在View Controller上为Table View和Segmeted Conrol添加约束

UITapGestureRecognizer点击self.view但忽略子视图

LiveCharts - 零在 Y 轴上显示为指数