Swift_貝塞爾曲線(自定義視圖)

貝塞爾曲線.png

一, 創(chuàng)建自定義視圖

    func createLayerWithView(view : UIView){
        let viewWidth=CGRectGetWidth(view.frame);
        let viewHeight=CGRectGetHeight(view.frame);
        let point1 = CGPointMake(0,10);
        let point2 = CGPointMake(viewWidth-35,10);
        let point3 = CGPointMake(viewWidth-25, 0);
        let point4 = CGPointMake(viewWidth-15,10);
        let point5 = CGPointMake(viewWidth,10);
        let point6 = CGPointMake(viewWidth , viewHeight);
        let point7 = CGPointMake(0, viewHeight);
        
        let bezierPath = UIBezierPath()
        bezierPath.moveToPoint(point1)
        bezierPath.addLineToPoint(point2)
        bezierPath.addLineToPoint(point3)
        bezierPath.addLineToPoint(point4)
        bezierPath.addLineToPoint(point5)
        bezierPath.addLineToPoint(point6)
        bezierPath.addLineToPoint(point7)
        bezierPath.closePath()
        
        let layer = CAShapeLayer()
        layer.path = bezierPath.CGPath
        view.layer.mask = layer
    }

二, 給它位置大小

    var customView : UIView!
     self.customView = UIView.init(frame: CGRectMake(WIDTH-(WIDTH/4+30),200, WIDTH/4+20,150))
        customView.backgroundColor = UIColor.blackColor()
        customView.alpha = 0.8
        self.view.addSubview(customView)
        self.createLayerWithView(self.customView)

三, 也可以在此設(shè)置動(dòng)畫

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

相關(guān)閱讀更多精彩內(nèi)容

  • 翻譯自“Collection View Programming Guide for iOS” 0 關(guān)于iOS集合視...
    lakerszhy閱讀 4,076評(píng)論 1 22
  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,099評(píng)論 25 709
  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫、插件、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 15,406評(píng)論 4 61
  • 北京最近天氣真是太溫和了,最高溫度是西安的最低溫度。早上7點(diǎn)多出門的時(shí)候,還會(huì)感覺有點(diǎn)冷。 大華煎餅 前兩天就籌劃...
    木梓楠閱讀 424評(píng)論 0 0
  • 今天已經(jīng)是來沁陽丹河電廠的第七天了,回想這幾天的地工作,無外乎走流程找人,耐心等待出結(jié)果。原計(jì)劃三四天的工作,沒想...
    感想心得閱讀 253評(píng)論 0 0

友情鏈接更多精彩內(nèi)容