CAShapeLayer與CAGradientLayer

CAShapeLayer

1、path

貝塞爾曲線和圖層結合才能繪制出各種各樣的圖形。

注:當與貝塞爾曲線一起使用的時候,生成的曲線的位置是相對于生成的layer的,
   所以當你利用貝塞爾曲線設置了path后,再設置layer的position和bounds
   你會感覺很奇怪,最簡單的方式就是單純利用貝塞爾曲線決定圖層的位置和大?。?
2、fillColor 和 fillRule

??????fillColor即layer的path的填充顏色
??????fillRule屬性指圖層的填充規(guī)則

3、strokeColor

??????線顏色

4、strokeStart strokeEnd

??????兩者的取值都是0~1,決定貝塞爾曲線的劃線百分比,對應值的改變支持隱式動畫

5、lineWidth

?????? 線寬

6、miterLimit

??????最大斜接長度,只有l(wèi)ineJoin屬性為kCALineJoinMiter時miterLimit才有效,當銜接角度太小時,斜接長度就會很大,如果設置了 miterLimit并且當斜接長度大于這個值時,便會對應裁切掉多余區(qū)域

圖1.png

設置miterLimit后:

圖2.png
7、lineCap

線端點類型,也就是對應曲線結束的點的顯示樣式。

線端點類型.png
8、lineJoin

連接點類型,也就是對應曲線節(jié)點的位置的顯示樣式。

連接點類型.png
9、lineDashPattern

??????線設置,為一個數(shù)組,數(shù)組中奇數(shù)位實線長度,偶數(shù)位帶遍空白長度(注意:這里的奇數(shù),偶數(shù)以數(shù)組的第一個元素索引為1計算)

10、lineDashPhase

??????虛線開始的位置,可以使用此屬性做一個滾動的虛線框。

CAGradientLayer

1、colors

??????在Layer中實現(xiàn)幾種顏色并完成完美的過渡,和CAShapeLayer的path一樣,colors是CAGradientLayer特殊屬性的起點,也就是x 顯示的要素

2、locations

??????顏色區(qū)間分布比例,默認為線性均勻分布。取值范圍為0~1遞增,一般來說其中的元素個數(shù)應與colors中的元素個數(shù)相同,不同時系統(tǒng)會自行處理分布規(guī)則。
設置 gradientLayer.locations = @[@(0.3),@(0.7)];

3、startPoint endPoint

??????startPoint決定了變色范圍的起始點,endPoint決定了變色范圍的結束點,兩者的連線決定變色的趨勢:

1.png
2.png
3.png
4.png

注意:locations是相對于startPoint和endPoint的變化范圍而言的。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內容