【问题标题】:MKMapView in loadView methodloadView 方法中的 MKMapView
【发布时间】:2010-12-14 05:42:54
【问题描述】:

我有一个愚蠢的问题要问,问题是我一直在使用 MapKit 框架,发现每当我在 init 方法中设置 MKMapView 对象的框架和 mapType 时,我都会得到一个空白视图,但是当我在loadView方法中设置frame和mapType可以查看地图界面。

为什么会这样?我正在使用 SDK 3.1

请帮忙

这是我的代码

-(无效)加载视图{ [超级负载视图]; mymapView = [[MKMapView alloc]initWithFrame:self.view.bounds]; mymapView.mapType = MKMapTypeStandard; mymapView.showsUserLocation = 是; [self.view addSubview:mymapView]; }

【问题讨论】:

  • 地图视图是从 xib 加载的吗?您是在 loadView 中实例化地图视图,还是访问在界面生成器中设置的地图视图出口?
  • 不,我使用的代码没有 IB
  • 我粘贴的上述代码没有任何错误,但问题是为什么它在 loadView 为什么不在 init 中

标签: iphone objective-c xcode mkmapview


【解决方案1】:

使用调试指针检查init方法调用与否。我认为init方法不调用

但 viewDidLoad 总是调用这就是为什么会发生这种情况。

你也可以根据你的使用,即在init中显示地图,只需在viewDidLoad中调用init即可。

【讨论】:

  • viewDidLoad 方法总是被调用,因为当我们想在视图加载到窗口后对视图进行一些操作时,然后我们使用 viewDidLoad。现在确实调用了init方法,但是b4当我使用标签和按钮时,我曾经在init方法中为这些对象提供框架并且它们工作正常。对于地图视图,如果我在 init 方法中给出框架,我剩下的只是一个空白 UIView,仅此而已,我想知道为什么会发生这种情况
猜你喜欢
  • 1970-01-01
  • 2011-12-03
  • 1970-01-01
  • 1970-01-01
  • 2012-06-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多