0

在我的 viewDidAppear 中,我正在更改我的一个 ImageViews 的框架。在我将 [self viewDidAppear] 之前,视图和所有其他方法都不会显示它。我觉得它不对,是否有一些 reloadData 消息?

谢谢你。

4

3 回答 3

1

没错,称呼[self viewDidappear]自己是不对的。

如果您需要在视图上更改视图的框架,请自己创建一个可以在每次需要时调用的方法,或者使用viewDidLayoutSubviews;

当视图控制器视图的边界发生变化时,视图会调整其子视图的位置,然后系统调用此方法。但是,调用此方法并不表示视图的子视图的各个布局已被调整。每个子视图负责调整自己的布局。

另外,检查您的方法是否具有正确的实现:

-(void)viewDidAppear:(BOOL)animated
{
    [super viewDidAppear:animated];

    //Your code
}
于 2013-10-14T14:14:15.010 回答
0

最好将图像视图的框架更改为viewDidLayoutSubviews.

于 2013-10-14T14:13:29.817 回答
0

您可能实现了错误的功能。正确的方法签名是:

- (void)viewDidAppear:(BOOL)animated

不只是viewDidAppear

于 2013-10-14T14:14:24.463 回答