`
PrisonBreak
  • 浏览: 96299 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

iOS开发不能错过的第三方库之一:AwesomeMenu

阅读更多

前言:开发语言:Swift,项目源代码基于xcode7.0.1,iOS9

AwesomeMenu是一个菜单酷炫展示的第三方库,效果见下图:

 

 

 

因为使用的是Swift语言,AwesomeMenu还是基于OC开发的,所以需要建立桥接文件,过程在这里不说了,可以看我另一篇文章的介绍,点击这里

 

好了,废话不多说,直接开始了。。。

 

---------------------------------------------------我是分割线哦------------------------------------------------------

1.首先导入需要的类库资源,打开目录,直接拖入工程中。资源在附件里有。

2.代码:

import UIKit

class ViewController: UIViewController, AwesomeMenuDelegate {
    
    override func viewDidLoad() {
        super.viewDidLoad()
        
        // 声明三张图片
        let menuItemImage = UIImage(named: "bg-menuitem.png")
        let menuItemLigntImage = UIImage(named: "bg-menuitem-highlighted.png")
        let starImage = UIImage(named: "icon-star.png")
        
        // 声明五个MenuItem,为了简便起见这里用到的图片资源是一样的,实际中可以替换相应的图片
        let item1 = AwesomeMenuItem(image: menuItemImage, highlightedImage: menuItemLigntImage, contentImage: starImage, highlightedContentImage: nil)
        
        let item2 = AwesomeMenuItem(image: menuItemImage, highlightedImage: menuItemLigntImage, contentImage: starImage, highlightedContentImage: nil)
        
        let item3 = AwesomeMenuItem(image: menuItemImage, highlightedImage: menuItemLigntImage, contentImage: starImage, highlightedContentImage: nil)
        
        let item4 = AwesomeMenuItem(image: menuItemImage, highlightedImage: menuItemLigntImage, contentImage: starImage, highlightedContentImage: nil)
        
        let item5 = AwesomeMenuItem(image: menuItemImage, highlightedImage: menuItemLigntImage, contentImage: starImage, highlightedContentImage: nil)
        
        // 中间那个点击的按钮
        let bossMenuItem = AwesomeMenuItem(image: UIImage(named: "bg-addbutton.png"), highlightedImage: UIImage(named: "bg-addbutton-highlighted"), contentImage: UIImage(named: "icon-plus"), highlightedContentImage: UIImage(named: "icon-plus-highlighted"))
        
        let menu = AwesomeMenu(frame: self.view.frame, startItem: bossMenuItem, menuItems: [item1, item2, item3, item4, item5])
        menu.delegate = self
        self.view.addSubview(menu)
        
        // 效果开始角度,是按照圆周率的比例还算的,规律自己琢磨吧
        menu.rotateAngle = (CGFloat)(M_PI)*3/2
        
        // 按钮展开的角度范围
        menu.menuWholeAngle = (CGFloat)(M_PI)
        
        // 按钮弹出间隔时间
        menu.timeOffset = 0.1
        
        // 弹出最远距离
        menu.farRadius = 200
        // 弹出最近距离
        menu.nearRadius = 100
        // 最后固定距离
        menu.endRadius = 150
        
    }
    
    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }
    
    // 实现AwesomeMenuDelegate的方法
    func awesomeMenu(menu: AwesomeMenu!, didSelectIndex idx: Int) {
        // 这里就是点击按钮所触发的事件
        print("\(idx)")
    }
    
    
}

 

 

  • 大小: 73.6 KB
分享到:
评论

相关推荐

    IOS应用源码之AwesomeMenu.zip

    在iOS应用开发中,AwesomeMenu是一个非常流行的库,它提供了优雅且引人注目的菜单效果,通常用于导航或者展示应用的主要功能。这个压缩包“IOS应用源码之AwesomeMenu.zip”包含的就是AwesomeMenu的源代码,对于iOS...

    ios-SDiffuseMenu(Swift版AwesomeMenu)-炫酷的菜单弹射动画.zip

    SDiffuseMenu是一个用Swift编写的库,它为开发者提供了一种创建炫酷菜单弹射动画的工具。这款菜单在用户界面上呈现出极具视觉冲击力的效果,为应用程序添加了鲜明的个性化特征。 SDiffuseMenu的设计灵感来源于...

    AwesomeMenu.zip

    《AwesomeMenu:Objective-C实现的华丽菜单效果》 在iOS应用开发中,用户界面的设计是至关重要的,一个吸引人的、富有创意的界面可以极大地提升用户体验。"AwesomeMenu"项目就是一个典型的例子,它通过Objective-...

    IOS应用源码——向四周动态扩展的圆形按钮.zip

    AwesomeMenu是一个流行的iOS库,提供了类似的功能,用于创建炫酷的动画菜单。开发者可能在原基础上进行了定制,以适应自己的应用需求。 在iOS应用开发中,这种自定义UI组件的使用可以显著提升应用的用户体验和辨识...

    AwesomeMenu:环形菜单

    AwesomeMenu 环形菜单

    UIMeunController

    9. **Pods管理**:如果项目中使用了CocoaPods进行依赖管理,需要了解如何添加、配置和使用QuadCurveMenu这个第三方库。 10. **测试与调试**:最后,确保在各种设备和iOS版本上进行全面的测试,确保功能的稳定性和...

    ios-自适应边界的按钮(天女散花).zip

    原谅小弟之前不知道facebook鼎鼎大名的path与AwesomeMenu,自己设计走了不少弯路,由朋友反馈,并参照AwesomeMenu重写事件响应链方法,修复了按钮无法响应事件的bug。并且用groupAnimation优化了部分动画效果,最新...

    DiffuseMenu_Swift:点击菜单中的动画效果,Swift语言版AwesomeMenu

    一,使用方法: 1 \使用pod方式嵌入项目:pod'SDiffuseMenu','〜> 1.2.1' 2 \直接下载zip包内含: 1)SDiffuseMenuDebugDemo.xcodeproj:即调试演示 2)SDiffuseMenu文件夹:内含源文件 3)SDiffuseMenuDemo....

    QuadCurveMenu.zip

    【标题】:“QuadCurveMenu.zip”是一个开源项目,最初命名为QuadCurveMenu,但在后续发展过程中,它被更改为“AwesomeMenu”。这个项目是基于Objective-C编程语言开发的,旨在为移动应用提供一种独特的、视觉吸引人...

    QuadCurveMenu修改版

    【标题】"QuadCurveMenu修改版" 是一个针对iOS平台的UI组件,它提供了一种独特而吸引人的弹出菜单特效。这个修改版是原始QuadCurveMenu库的优化和改进版本,旨在为开发者提供更加流畅、自定义化的用户体验。 【描述...

    AwesomeMenu:通过HTML,CSS,JQuery,真棒字体和逐行注释创建的真棒切换菜单

    本项目中使用的模块/库/功能/图标: 字体超赞的cdjns jQuery v3.3.1 | (c)JS基金会和其他贡献者| jquery.org/license HTML-5 自定义CSS 自定义JavaScript 和一些图标。我不知道有人是否有足够的时间声明...

    点击菜单弹射选项的动画效果

    在iOS应用开发中,创建吸引用户的交互体验是至关重要的,其中一种常见的方法就是通过动态的、视觉上引人入胜的动画效果。标题中的“点击菜单弹射选项的动画效果”指的是在用户点击菜单项时,菜单选项以一种生动、...

    QuadCurveMenu, 路径 2.0菜单( 可以配置,可以扩展和可以组合).zip

    QuadCurveMenu, 路径 2.0菜单( 可以配置,可以扩展和可以组合) QuadCurveMenu是一个菜单,与的菜单menu菜单... 这是一个 fork的 AwesomeMenu的。 我提出了请求请求,而这不是原始作者想要创建的内容。 这个 fork 有一些

Global site tag (gtag.js) - Google Analytics