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){
}];
}];
似乎无论什么我尝试当我执行的动画,它会以某种方式出现故障,不管是只有一个动画播放,或两者的演奏,然后回弹至位置。我错过了文档中的一些基本教训吗?这似乎是一项基本任务。任何关于这个问题的提示或想法将不胜感激。
更新:我已经进一步缩小了这个问题,它会出现,如果只有一个动画被激发,动画播放正常,视图保持原位。但是,如果两者同时被呼叫或者被链接(即使拖延),两者都可以放松并且视图可以回到它们所在的位置。结果是奇怪的排序闪烁,然后什么也没有。