經驗之談 座標系的轉換

2021-07-08 20:55:19 字數 1297 閱讀 9050

- (void)viewdidload

如圖

一開始我們設定這個紅色的區域的座標是相對於藍色的區域的,因為紅色的是新增到藍色的,當我們想獲取到這個紅色的view在螢幕中的座標的時候,就需要用到座標系轉換了,看一下:

- (void)touchesbegan:(nsset *)touches withevent:(uievent *)event

我們看一下列印出來的結果:

就能實現了座標系的轉換。那我們接下來看一下這個轉換的**,如何理解呢?

- (cgrect)convertrect:(cgrect)rect toview:(nullable uiview *)view;
[self

.red convertrect:self

.red

.bounds toview:nil];

nslog(@"%@", nsstringfromcgrect(newrect));

將self.red的self.red.bounds轉換成螢幕的座標。

還有以下的幾種轉換方式:

cgrect newrect = [self

.view convertrect:self

.red

.bounds fromview:self

.red];

cgpoint newpoint =  [self

.red convertpoint:self

.red

.bounds

.origin toview:nil];

nslog(@"%@",nsstringfromcgpoint(newpoint));

cgrect newrect = [self

.red

.superview convertrect:self

.red

.frame toview:nil];

總結一點

第二引數要看第乙個引數,進行判斷是相對於誰的轉換成(目標)的座標。細心一點,就行

結果是一樣的。

面試經驗之談

這裡是2017年11月7日,鄙人不才,17年應屆畢業,經驗不足,十一之後來到上海找工作,目前一無所獲。無奈,今天又逛了一趟培訓機構,看著和自己年齡相仿同學在前台焦急等待的時候感觸頗深,為什麼總是接到培訓機構的邀請,而不見想象之中offer也看不見期待的公司的回覆。剛好有哥哥姐姐在上海這邊,所以借住在...

併發控制經驗之談

多年使用鎖的經驗說明,我們很難駕輕就熟地使用鎖。併發的管理本來就非常棘手,而許多使用方法都可能導致錯誤。本文將總結一些併發控制中容易導致錯誤的東西。不明確的規則 恰當的鎖定模式需要清晰和明確的規則。當我們建立乙個可被並行訪問的物件時,應該同時定義用來控制訪問的鎖。鎖定模式必須在一開始就安排好,否則其...

幾次面試經驗之談

幾次面試經驗之談 文 飛天含雪 從十一假期結束到現在,近乙個月了,大大小小的面試總共參加了六七場,對面試有些感想,筆者知道網上談論該話題也多,但要麼片面,要麼扯淡,不僅達不到目的,反而有誤導民眾之嫌,筆者今日將經驗之談一一和盤托出,希望大家能有所借鑑。一 首當其衝 者 凶多吉少 收拾殘局 者 漁翁得...