簡體   English   中英

iOS UIView動畫changeFrame錯誤的坐標系

[英]iOS UIView animation changeFrame wrong coordinate system

請參見下面的代碼。 當動畫中的幀“更改”時,它將更改為實際單元的坐標系,而不是整個視圖的坐標。 因此(0,0)是單元格的原點,而不是整個視圖。 該單元格位於屏幕的中間(GMGridView的一部分)。

我要完成的工作:我需要獲得整個視圖中單元格的絕對位置,然后從那里動畫化同樣在整個視圖坐標系中的幀變化(使用翻轉的大小)。 然后更改回該單元格的“舊”絕對框架(按按鈕)。 我通過按鈕和代表處理的邏輯工作正常。 唯一不起作用的是框架。

有任何想法嗎?

我試圖獲取絕對的frameInMainWindow,但無法正確顯示。 並嘗試與clipToBounds玩沒有運氣。 一堆其他東西沒有幫助。

外面有人對如何實現上述目標有想法嗎?

任何幫助將不勝感激。

cell.contentView.contentMode = UIViewContentModeRedraw;
[UIView transitionWithView:cell.contentView duration:2
                   options:UIViewAnimationOptionTransitionFlipFromRight
                animations: ^{            
cell.contentView.frame = CGRectMake(0,
                                0,
                                myFullView.frame.size.width,
                               myFullView.frame.size.height);
                    [cell.contentView addSubview:myFullView];                     
                    [gmGridView bringSubviewToFront:cell];}
                completion: ^(BOOL finished) { }];

這會幫助你,

CGRect theFrame = CGRectMake(0, 0, myFullView.frame.size.width, myFullView.frame.size.height);
CGRect frameInSelfView = [self.view convertRect:theFrame fromView:cell];

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM