簡體   English   中英

根據方向變化更改CGRect值

[英]change CGRect values according to change in orientation

我在view1中有一個按鈕。 當我按下該按鈕時,第二個視圖view2從該按鈕的CGRect中獲得動畫效果。 在view2的viewController端有一個類別,我可以在其中傳遞來自view1的按鈕的CGRect值。 此外,我將此rectValue存儲在view2的屬性中。 現在,當我關閉視圖時,我需要將視圖動畫化回相同的按鈕。 我通過將另一個CGRect(我在view2上保存的屬性)傳遞給同一類別來實現。 所有這些都很好。

問題是-當我從我的按鈕啟動view2時,當我處於view2中時,更改設備方向,然后將其關閉,該視圖仍然嘗試返回按鈕的原始位置。

因此,我需要以某種方式根據view2方向的變化來更改CGRect值。 我可以將視圖的方向傳遞給類別,但是我仍然無法根據新方向更改rect值。

無法將autoResizeMaskTool應用於按鈕的矩形,因為該按鈕不存在於view2中。

我研究了一種幾乎可以解決問題的方法-convertRect:ToView:但沒有完全滿足我的需要(或者也許我只是不知道如何正確使用該方法)

先感謝您。

與其將rect作為屬性存儲在view2中,您還可以保留對按鈕的弱引用嗎? 這樣,當您需要對其進行動畫處理時,可以在該點詢問它的框架,如果由於旋轉而移動了它,則應該獲得它的新位置。

暫無
暫無

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

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