0
我有一個大約2/3的屏幕區域的屏幕區域,在這個區域有兩個對象一個MKMapView和一個UITableView。按下按鈕時,我想用小小的大小調整動畫來調換兩者之間的大小。該CGRects計算,像這樣:UIView動畫隨機展開
//Calculate initial screen item sizes
int mapTypeButtH=20;
int baseX=5;
int baseY=self.but_mapHybrid.frame.origin.y+self.but_mapHybrid.frame.size.height;
int baseW=310;
int availableSpace=self.view.frame.size.height-baseY;
posMapMinor=CGRectMake(baseX,baseY,baseW,(availableSpace/10)*2);
posListMajor=CGRectMake(baseX,baseY+((availableSpace/10)*2),baseW,(availableSpace/10)*8);
posMapMajor=CGRectMake(baseX,baseY,baseW,(availableSpace/10)*8);
posListMinor=CGRectMake(baseX,baseY+((availableSpace/10)*8),baseW,(availableSpace/10)*2);
這一切都出來罰款,我檢查了它產生的值,然後按下按鈕我曾嘗試配置來執行動畫本身的所有方式,還沒有工作正常。目前的嘗試是,像這樣:
[UIView animateWithDuration:.5 delay:0 options: UIViewAnimationOptionCurveEaseOut animations:^{
self.mapView.frame=posMapMinor;
}completion: ^(BOOL finished){
[UIView animateWithDuration:.5 delay:0 options: UIViewAnimationOptionCurveEaseOut animations:^{
self.tbl_actions.frame=posListMajor;
}completion: ^(BOOL finished){
}];
}];
似乎無論什麼我嘗試當我執行的動畫,它會以某種方式出現故障,不管是隻有一個動畫播放,或兩者的演奏,然後回彈至位置。我錯過了文檔中的一些基本教訓嗎?這似乎是一項基本任務。任何關於這個問題的提示或想法將不勝感激。
更新:我已經進一步縮小了這個問題,它會出現,如果只有一個動畫被激發,動畫播放正常,視圖保持原位。但是,如果兩者同時被呼叫或者被鏈接(即使拖延),兩者都可以放鬆並且視圖可以回到它們所在的位置。結果是奇怪的排序閃爍,然後什麼也沒有。