1
我有一個UIView作爲2個tableviews的容器。我有兩個按鈕可以控制數據在這些表格上的加載方式。基本上,當1個按鈕被竊聽了UIView滑出,以顯示與該按鈕的實現代碼如下,當其他按鈕被竊聽我需要它:可可觸摸嘗試延遲uiview的動畫之前,它再次彈出
- 接近
- 隱藏一號的tableview
- 然後取消隱藏第二次的tableview
- 然後UIView的滑回了
這裏就是我有
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:0.5];
[UIView setAnimationDelay:0.0];
[UIView setAnimationCurve:UIViewAnimationCurveEaseOut];
if(!isTableOpen){
[self.fighterTableView setHidden:YES];
[self.matchTableView setHidden:NO];
isTableOpen = YES;
viewTableContainer.frame = CGRectMake(0, 0, 352, 700);
[self.view bringSubviewToFront:viewTableContainer];
[UIView commitAnimations];
}else{
//isTableOpen = NO;
viewTableContainer.frame = CGRectMake(-352, 0, 352, 700);
[UIView commitAnimations];
[self.fighterTableView setHidden:YES];
[self.matchTableView setHidden:NO];
viewTableContainer.frame = CGRectMake(0, 0, 352, 700);
[UIView commitAnimations];
}
這裏的問題是,在else語句的commitanimations我試圖設置隱藏屬性,然後再彈出的UIView出來。發生了什麼只是隱藏和取消隱藏tableview,但動畫從未發生過。我覺得我需要使用延遲,但Idk如何,除非有一個更體面的方式來處理?
想法?
您可以更改根據您的需要的延遲時間。 – m4n1c 2013-05-09 08:36:01
該方法是否會在「commitAnimations」部分之後執行?下午工作後伊馬儘快嘗試。 – gdubs 2013-05-09 12:20:38
也,我不必刪除viewtablecontainer.frame從其他,因爲它已經在動畫methoddidfinish?或沒有? – gdubs 2013-05-09 12:36:49