我在Playground中擺弄我的MKMapView
,我無法動畫它的frame.size.height
。這是我的遊樂場代碼:MKMapView不遵守動畫延遲
let vc = UIViewController()
vc.view.backgroundColor = UIColor.whiteColor()
XCPlaygroundPage.currentPage.liveView = vc
let map = MKMapView(frame: vc.view.frame)
map.backgroundColor = UIColor.redColor()
map.autoresizesSubviews = false
vc.view.addSubview(map)
UIView.animateWithDuration(2.0, delay: 1.0, usingSpringWithDamping: 0.5, initialSpringVelocity: 1.0, options: .CurveEaseInOut, animations: {
map.frame.size.height = 200
}, completion: nil)
您可以通過觀察地圖的紅色背景顏色來判斷實際動畫何時發生。可見地圖的高度在MKMapView
的高度之前下降。設置autoresizesSubviews = false
似乎沒有做任何事情。那麼爲什麼看起來好像有兩個不同的動畫呢?
UPDATE在我的遊樂場,我打消了我所有的MKMapView
子視圖,以及_MKMapContentView
,一個地圖的兩個子視圖的(另一個是「法律」 MKAttributionLabel
),已被刪除,只有它是紅色的背景渲染MKMapView
。所以_MKMapContentView
被調整爲子視圖,但調用map.autoresizesSubviews = false
沒有做到這一點。是什麼賦予了?
謝謝,但那不是我問的。我只是使用紅色背景作爲例子。我問爲什麼看起來好像有兩個動畫。 – chicobermuda