使用自动布局在UITableViewCell内部进行MKSnapshotter调整大小的问题

时间:2019-05-17 11:33:04

标签: ios swift uitableview

有关此问题的示例,请访问https://github.com/SRowley90/MKMapSnapshotterExample

我有一个问题,需要在表格单元格内显示地图快照。我在UIStackView的一个包含视图内有一个固定高度的图像视图,因此与间距相比,我可以拥有更大的边距(尽管这与问题不相关)。

我的问题是,MKSnapshotter要求在确定单元格的宽度之前确定视图的大小。在单元格上调用setup()方法,该单元格以当时具有的大小创建MKSnapshotter.Options,该大小直接来自单元格的nib文件。

let options = MKMapSnapshotter.Options()
options.region = MKCoordinateRegion(center: centerCoordinate, latitudinalMeters: distanceInMeters, longitudinalMeters: distanceInMeters)
options.size = self.mapSnapshotImageView.bounds.size

MKSnapshotter获取图像并将其设置在UIImageView中,然后该单元根据Autolayout属性对视图进行布局,因此,带回的图像不再是该视图的正确尺寸。在该示例中,我在缓存此图像方面做得很差,因此我可以更好地演示。

我需要调回图像以使用显示它的ImageView的整个宽度,但是我不确定该怎么做。

enter image description here

0 个答案:

没有答案