瀏覽時(shí)看了下,繼承UITextField,重寫父類方法,來達(dá)到自定義UITextField的文章,其中看到羅列的代碼中的CGRectInset的方法,有些疑惑,沒怎么見過,搜索一番進(jìn)行學(xué)習(xí)。
首先,放官方API文檔。
瀏覽的一些其他相關(guān)文章:
CGRectInset、CGRectOffset、等對比整理
也有些朋友的文章會總結(jié)一些規(guī)律:
CGRectInset(CGRect rect, CGFloat dx, CGFloat dy),三個(gè)參數(shù)。rect:待操作的CGRect;dx:為正數(shù)時(shí),向右平移dx,寬度縮小2dx。為負(fù)數(shù)時(shí),向左平移dx,寬度增大2dx;dy:為正數(shù)是,向下平移dy,高度縮小2dy。為負(fù)數(shù)是,向上平移dy,高度增大2dy。
CGRectOffset、CGRectInset 、CGRectContainsPoint淺析
該函數(shù)表示:通過后面的 dx和dy 重置第一個(gè)參數(shù)rect作為結(jié)果返回。
重置方式:1->>先把rect的坐標(biāo)按dx,dy進(jìn)行平移
2->> 然后把rect大小(size)寬度縮小2倍的dx 高度縮小2倍的dy
3->>如果dx dy是負(fù)的 就是放大
4->> 就是在CGRectOffset的基礎(chǔ)上 調(diào)整 size
由此告誡自己還是要努力多讀文檔,當(dāng)然在沒有轉(zhuǎn)變過來之前,可以適當(dāng)進(jìn)行對比來學(xué)習(xí),也不要一味死磕官方API文檔。