UI高度可定制化KxMenu彈出菜單:NirKxMenu

jopen 9年前發布 | 20K 次閱讀 NirKxMenu iOS開發 移動開發

UI高度可定制化KxMenu彈出菜單

效果如下:

effect

與QQ自帶彈出菜單對比:

effect2

用法:

菜單內容設置

let menuArray = [KxMenuItem.init("掃一掃", image: UIImage(named: "Touch"), target: self, action: "respondOfMenu:"),
            KxMenuItem.init("加好友", image: UIImage(named: "Touch"), target: self, action: "respondOfMenu:"),
            KxMenuItem.init("創建討論組", image: UIImage(named: "Touch"), target: self, action: "respondOfMenu:"),
            KxMenuItem.init("發送到電腦", image: UIImage(named: "Touch"), target: self, action: "respondOfMenu:"),
            KxMenuItem.init("面對面快傳", image: UIImage(named: "Touch"), target: self, action: "respondOfMenu:"),
            KxMenuItem.init("收錢", image: UIImage(named: "Touch"), target: self, action: "respondOfMenu:")]

菜單UI設置

     //配置一:基礎配置
        KxMenu.setTitleFont(UIFont(name: "HelveticaNeue", size: 15))

        //配置二:拓展配置
        let options = OptionalConfiguration(arrowSize: 9,  //指示箭頭大小
            marginXSpacing: 7,  //MenuItem左右邊距
            marginYSpacing: 9,  //MenuItem上下邊距
            intervalSpacing: 25,  //MenuItemImage與MenuItemTitle的間距
            menuCornerRadius: 6.5,  //菜單圓角半徑
            maskToBackground: true,  //是否添加覆蓋在原View上的半透明遮罩
            shadowOfMenu: false,  //是否添加菜單陰影
            hasSeperatorLine: true,  //是否設置分割線
            seperatorLineHasInsets: false,  //是否在分割線兩側留下Insets
            textColor: Color(R: 0, G: 0, B: 0),  //menuItem字體顏色
            menuBackgroundColor: Color(R: 1, G: 1, B: 1)  //菜單的底色
        )

菜單彈出方法

KxMenu.showMenuInView(self.view, fromRect: sender.frame, menuItems: menuArray, withOptions: options)

項目主頁:http://www.baiduhome.net/lib/view/home/1443430964158

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!