ios开发之loadview

在纯代码写界面的时候,应该在UIViewController的loadView中创建控件.

这时候对[super loadView]函数的调用是有一些讲究的.

 

- (void)loadView
{
  //在loadView开始的时候调用[super loadView],系统会把self.view创建一个空的view,于是我们可以把自己创建和要添加的控件作为该view的subview添加. [super loadView]; UIButton
*button = [UIButton buttonWithType:UIButtonTypeRoundedRect]; orderButton.frame = CGRectMake(10, 10, 10, 10); [self.view addSubview:orderButton]; }

 

而如果这样写

- (void)loadView
{
//如果不调用[super loadView],这时候self.view是nil!所以不能添加subview到self.view中,而应该直接让self.view指向自己的view(当然这里一般不是button).

  //[super loadView]

UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
    orderButton.frame = CGRectMake(10, 10, 10, 10);
    //[self.view addSubview:orderButton];
    self.view = button;
    
}

 

posted on 2012-12-01 16:08  Entreri  阅读(502)  评论(0)    收藏  举报