Bee*_*nny 4 resize orientation mapkit mkmapview ios
- (void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:YES];
self.mapView.frame = self.view.bounds;
self.mapView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
CLLocationCoordinate2D startCoord = CLLocationCoordinate2DMake(36.7472, -95.9594);
MKCoordinateRegion adjustedRegion = [self.mapView regionThatFits:MKCoordinateRegionMakeWithDistance(startCoord, 10000*1609.344, 10000*1609.344)];
[self.mapView setRegion:adjustedRegion animated:YES];
}
Run Code Online (Sandbox Code Playgroud)
这就是我现在的代码.当我将iPad的方向从横向更改为纵向时,地图视图的大小不会更改.我希望它能填满整个视图.我试过搜索谷歌和stackoverflow的解决方案,但我没有运气.
任何帮助都会非常感激.
jsd*_*jsd 10
-(void)viewWillLayoutSubviews {
[super viewWillLayoutSubviews];
self.mapView.frame = self.view.bounds;
}
Run Code Online (Sandbox Code Playgroud)
这将确保每当触发视图控制器布局时(例如,在自动旋转时),地图框将调整到视图边界.
实际上,您可以从viewWillAppear中取出设置的框架线,因为viewWillLayoutSubviews在初始设置时运行.
如果您使用的是Autolayout,您可以: - 转到Storyboard,然后单击mapView. - 在Storyboard底部查找分段控件,然后单击"Pin"段.在此处,添加左,右,上和下的约束.这应该做你想要的.
非常简单,无需代码.
| 归档时间: |
|
| 查看次数: |
6715 次 |
| 最近记录: |