制作錐形按鈕并重寫UIbutton點擊區(qū)域

一個自定義圖表的需求露久,順便分享一下


6312E625-29F3-499F-8E71-DC332CBA91BC.png

設置點擊區(qū)域更米,path為按鈕的layer

class CusButton: UIButton {
    override func point(inside point: CGPoint, with event: UIEvent?) -> Bool {
        let res = super.point(inside: point, with: event)
        if res {
            //內(nèi)部點位相對的坐標系為視圖本身
            
            //左側起始點
            let leftbeginpoint = CGPoint(x: 0, y: self.frame.size.height)
            //中間點
            let centerpoint = CGPoint(x: self.frame.size.width/2, y: 0)
            //控制點
            let controlpoint = CGPoint(x: self.frame.size.width/2,
                                           y: self.frame.size.height*6/7)
            //右側起始點
            let rightbeginpoint = CGPoint(x: self.frame.size.width,
                                          y: self.frame.size.height)
            
            let path = UIBezierPath()
            path.move(to: leftbeginpoint)
            path.addQuadCurve(to: centerpoint, controlPoint: controlpoint)
            path.addQuadCurve(to: rightbeginpoint, controlPoint: controlpoint)
            path.addLine(to: leftbeginpoint)
            path.close()
            
            if path.contains(point) {
                return true
            }
            
            return false
        }
        return false
    }
}

設置layer,可在自定義button里設置毫痕,但是目前不會做-征峦。-

//制作三角柱
    func creatTriangleColumn(columnlable: CusButton){
        //內(nèi)部點位相對的坐標系為視圖本身
        //左側起始點
        let leftbeginpoint = CGPoint(x: 0, y: columnlable.frame.size.height)
        //中間點
        let centerpoint = CGPoint(x: columnlable.frame.size.width/2, y: 0)
        //控制點
        let controlpoint = CGPoint(x: columnlable.frame.size.width/2,
                                       y: columnlable.frame.size.height*6/7)
        //右側起始點
        let rightbeginpoint = CGPoint(x: columnlable.frame.size.width,
                                      y: columnlable.frame.size.height)
        
        
        let path = UIBezierPath()
        path.move(to: leftbeginpoint)
        path.addQuadCurve(to: centerpoint, controlPoint: controlpoint)
        path.addQuadCurve(to: rightbeginpoint, controlPoint: controlpoint)
        path.addLine(to: leftbeginpoint)
        path.close()
        let shapelayer = CAShapeLayer()
        shapelayer.path = path.cgPath
        shapelayer.fillColor = danblue3.cgColor
        columnlable.layer.addSublayer(shapelayer)
        
    }
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末迟几,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子栏笆,更是在濱河造成了極大的恐慌类腮,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,284評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件蛉加,死亡現(xiàn)場離奇詭異蚜枢,居然都是意外死亡,警方通過查閱死者的電腦和手機针饥,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,115評論 3 395
  • 文/潘曉璐 我一進店門厂抽,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人丁眼,你說我怎么就攤上這事筷凤。” “怎么了苞七?”我有些...
    開封第一講書人閱讀 164,614評論 0 354
  • 文/不壞的土叔 我叫張陵嵌施,是天一觀的道長。 經(jīng)常有香客問我莽鸭,道長吗伤,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,671評論 1 293
  • 正文 為了忘掉前任硫眨,我火速辦了婚禮足淆,結果婚禮上,老公的妹妹穿的比我還像新娘礁阁。我一直安慰自己巧号,他們只是感情好,可當我...
    茶點故事閱讀 67,699評論 6 392
  • 文/花漫 我一把揭開白布姥闭。 她就那樣靜靜地躺著丹鸿,像睡著了一般。 火紅的嫁衣襯著肌膚如雪棚品。 梳的紋絲不亂的頭發(fā)上靠欢,一...
    開封第一講書人閱讀 51,562評論 1 305
  • 那天,我揣著相機與錄音铜跑,去河邊找鬼门怪。 笑死,一個胖子當著我的面吹牛锅纺,可吹牛的內(nèi)容都是我干的掷空。 我是一名探鬼主播,決...
    沈念sama閱讀 40,309評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼坦弟!你這毒婦竟也來了护锤?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 39,223評論 0 276
  • 序言:老撾萬榮一對情侶失蹤酿傍,失蹤者是張志新(化名)和其女友劉穎烙懦,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體拧粪,經(jīng)...
    沈念sama閱讀 45,668評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡修陡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,859評論 3 336
  • 正文 我和宋清朗相戀三年沧侥,在試婚紗的時候發(fā)現(xiàn)自己被綠了可霎。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,981評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡宴杀,死狀恐怖癣朗,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情旺罢,我是刑警寧澤旷余,帶...
    沈念sama閱讀 35,705評論 5 347
  • 正文 年R本政府宣布,位于F島的核電站扁达,受9級特大地震影響正卧,放射性物質發(fā)生泄漏。R本人自食惡果不足惜跪解,卻給世界環(huán)境...
    茶點故事閱讀 41,310評論 3 330
  • 文/蒙蒙 一炉旷、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧叉讥,春花似錦窘行、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,904評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至救崔,卻和暖如春惶看,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背六孵。 一陣腳步聲響...
    開封第一講書人閱讀 33,023評論 1 270
  • 我被黑心中介騙來泰國打工碳竟, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人狸臣。 一個月前我還...
    沈念sama閱讀 48,146評論 3 370
  • 正文 我出身青樓莹桅,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子诈泼,可洞房花燭夜當晚...
    茶點故事閱讀 44,933評論 2 355

推薦閱讀更多精彩內(nèi)容

  • UIButton實現(xiàn)區(qū)域外點擊 今天項目開發(fā)中偶然需要這個功能,一個按鈕區(qū)域大小外也要能夠點擊響應 因為項目是很早...
    spicyShrimp閱讀 574評論 0 0
  • 黑色的海島上懸著一輪又大又圓的明月铐达,毫不嫌棄地把溫柔的月色照在這寸草不生的小島上岖赋。一個少年白衣白發(fā),悠閑自如地倚坐...
    小水Vivian閱讀 3,108評論 1 5
  • 漸變的面目拼圖要我怎么拼脸甘? 我是疲乏了還是投降了? 不是不允許自己墜落偏灿, 我沒有滴水不進的保護膜丹诀。 就是害怕變得面...
    悶熱當乘涼閱讀 4,246評論 0 13
  • 感覺自己有點神經(jīng)衰弱,總是覺得手機響了翁垂;屋外有人走過铆遭;每次媽媽不聲不響的進房間突然跟我說話,我都會被嚇得半死沿猜!一整...
    章魚的擁抱閱讀 2,172評論 4 5
  • 夜鶯2517閱讀 127,720評論 1 9