【问题标题】:loadView is called each time .view notation is used每次使用 .view 表示法时都会调用 loadView
【发布时间】:2010-07-08 18:17:44
【问题描述】:

我有一个名为 MyViewController 的视图,我从一个 xib 文件初始化。

它的loadView方法是这样的:

- (void) loadView
{
    [super loadView];
    // some initializations
}

我从像这样的其他视图控制器创建它

-(void) createMyViewController
{
        MyViewController *aController = [[MyViewController alloc] initWithNibName: @"MyViewController" bundle: nil ];
        self.myController = aController;
        [aController release];

    CGRect rect = CGRectMake(10, 232, 308, 176);
    myController.view.frame = rect;
    myController.view.autoresizingMask = 
    UIViewAutoresizingFlexibleWidth | 
    UIViewAutoresizingFlexibleHeight |
    UIViewAutoresizingFlexibleTopMargin |
    UIViewAutoresizingFlexibleBottomMargin;

    [self.view addSubview:graphController.view];

}

我注意到,每次调用 .view 符号时,都会调用 MyViewController 的 loadView。我在xib文件中设置了view属性,File Owner身份是否设置为MyViewController,视图身份是否设置为MyView。设置视图后,它不会每次都调用 loadView。

请多指教!我已经为此奋斗了一整天了...

非常感谢

【问题讨论】:

    标签: iphone cocoa-touch uiview uiviewcontroller loadview


    【解决方案1】:

    如果您在 nib 文件中创建视图,则应使用 viewDidLoad,而不是 loadView

    【讨论】:

    • 试过了,由于某种原因没有被调用...怎么会? :(
    • 好的,当我将 MyView 添加到 UIView 并为 myView 创建一个特殊的插座时,它开始正常工作。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-11-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-15
    • 2019-08-14
    相关资源
    最近更新 更多