這是自定義乙個cell,cell的背景view是有灰色邊框的,如下:
結果測試妹紙說難看,因為左邊的邊框太礙眼了,需要去掉。這個邊框我是直接設定背景view的view.layer.bordercolor
做的,去掉就4個邊都去掉了。然後我想直接把往左移然後把背景view的clipstobounds
關閉,但是右上角的tag標籤是乙個旋轉label,背景view的clipstobounds
關閉後它又冒出去了。。。
所以最後我決定還是不設定背景view的邊框了,採用在上右下三邊新增view的方式來完成這個需求。
最終還是笑了.gif
但我依稀記得在cell裡新增太多控制項不好,所以果斷拋棄了那個想法。
最終還是決定畫一畫。
結合cashapelayer
和貝塞爾曲線來打點描線。
謝謝
貝塞爾曲線是曲線,我卻用它畫直線。。。
然後那個cashapelayer它是calayer的子類,它比calayer多乙個shape,意思就是說它是具有shape屬性的layer,而這個shape需要貝塞爾曲線的配合才能發揮出來。反正我是這樣理解的。
一.首先你得有乙個shapelayer
cashapelayer *borderlayer = [cashapelayer layer];
// 位置大小
borderlayer.frame = bgview.bounds;
// 線寬
borderlayer.linewidth = 1;
// 顏色
borderlayer.strokecolor = [uicolor colorwithhexstring:@"dcdcdc"].cgcolor;
// 不填充
borderlayer.fillcolor = nil;
// 新增到指定layer
[bgview.layer addsublayer:borderlayer];
二.然後你還得有一根曲線
1.建立曲線
// 建立path物件
uibezierpath *borderpath = [uibezierpath bezierpath];
2.打點描線// 設定path起點
[borderpath movetopoint:(cgpoint)];
// 依次設定轉點
[borderpath addlinetopoint:(cgpoint)];
[borderpath addlinetopoint:(cgpoint)];
[borderpath addlinetopoint:(cgpoint)];
三.最後將shapelayer和曲線完美結合// 最後將這個path賦值給layer的path
borderlayer.path = borderpath.cgpath;
去掉左邊框後確實更好看了,不得不說,測試妹紙的眼光還可以。
貝塞爾曲線
Python繪製三階貝塞爾曲線
作者本科畢業設計是做機械人軌跡跟蹤控制,軌跡由函式曲線來描述,本文選取三階貝塞爾曲線為代表進行講解,並展示部分基於python tkinter的實現 首先簡單了解一下什麼是貝塞爾曲線 余弦函式曲線我就不多說了哈!貝塞爾曲線又稱貝茲曲線,是法國工程師皮埃爾.貝塞爾於1962年發表。貝塞爾曲線廣泛應用於...
css3 動畫(二)貝塞爾曲線
有過渡效果的屬性 過渡時長 過渡函式?過渡時延 其中,1 2 以及 4 都挺好理解的,但是3是個什麼東西?其實3是 css3 中的 timing function,其中3有兩種型別的值 本篇就總結一下 cubic bezier x1,y1,x2,y2 立方貝塞爾曲線 貝塞爾曲線 bezier cur...
三階貝塞爾曲線公式計算座標
1.valueanimator通過animatorset去play valueanimator valueanimator getbesselanimator tempimageview,rankwidth,rankheight animatorset animatorset new animato...