(現象)iOS使用layer畫圓可能被截掉

2021-06-29 08:11:40 字數 537 閱讀 5866

做專案中碰到這樣乙個問題:

uiview

*test = [[

uiview

alloc

]initwithframe

:cgrectmake(50

,50,10

,10)];

test.

backgroundcolor

= [uicolor

blackcolor];

test.

layer

.maskstobounds

=yes;

test.

layer

.cornerradius=5

; [self

.view

addsubview

:test];

[test

release];

上面的**就是畫了乙個10*10的乙個圓,但如果把x座標的50改為50.7(非整數),就會出現圓的左邊有一點被截掉。(右邊同理)

還在尋找原因,先記錄下來,不知道是否有人能解釋一下。

iOS使用UIBezierPath畫圓角

這種方法簡單,但是很影響效能,特別是在uicollectionview中展示大量圓角,一般在正常的開發中使用很少 uiimageview imageview uiimageview alloc initwithframe cgrectmake 100,100,100,100 設定圓角 imagevi...

layer初步使用

layer提供了5種層型別。可傳入的值有 0 資訊框,預設 1 頁面層 2 iframe層 3 載入層 4 tips層 若你採用layer.open 方式呼叫,則type為必填項 資訊框除外 content可傳入的值是靈活多變的,不僅可以傳入普通的html內容,還可以指定dom,更可以隨著type的...

複習iOS動畫 layer 3

1.masktobounds 為yes時,sublayer border 全部都被clip了,要同時實現shadow,需要包乙個layer 2.shodowoffset,左上角為原點。core animation在計算陰影時會根據內容形狀產生,為了效能考慮,可以使用shadowpath 3.laye...