七巧板self.view下垂到TGMapView。 self.view在哪里分配?

时间:2018-11-26 14:29:19

标签: ios objective-c tangram

在七巧板的current demo app中,以下方法是在MapViewController.m中定义的。

- (void)viewDidLoad
{
    [super viewDidLoad];

    TGMapView *mapView = (TGMapView *)self.view;
    mapView.mapViewDelegate = self;
    mapView.gestureDelegate = self;
    self.locationManager = [[CLLocationManager alloc] init];
    self.locationManager.delegate = self;
}

发生在超级事件之后的第一件事是将self.view转换为TGMapView类型。可能有相关答案的两个问题:

  1. 通常,self.view在哪里分配值?

  2. 使用哪种初始化方法创建视图或自定义视图?


经过进一步研究,我在苹果文档上发现了this。似乎暗示自定义UIView必须具有这些init。我不清楚为什么需要两个不同的init,但是我可以假设Apple使用一个或两个来初始化视图。

1 个答案:

答案 0 :(得分:2)

有几种方法可以为视图控制器指定视图(UIViewController documentation的“视图管理”部分中有更多详细信息):

  • 在情节提要中
  • 在笔尖文件中
  • 覆盖控制器的loadView方法并在那里显式创建视图。

您链接到的演示应用程序使用情节提要板创建视图的UI和自定义类,并在Main_iPhone.storyboard(和Main_iPad.storyboard)中指定。