这个是一个第三方按钮菜单组件,原版是使用Objective-C编写的名为AwesomeMenu的组件,地址是:https://github.com/levey/AwesomeMenu

这里改造成了Swift版,效果图如下:
 
  
  
使用代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
import UIKit
 
class ViewController: UIViewController,HanggeSwiftMenuDelegate {
     
    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
         
        var storyMenuItemImage =  UIImage(named:"bg-menuitem.png")
        var storyMenuItemImagePressed =  UIImage(named:"bg-menuitem-highlighted.png")
        var starImage =  UIImage(named:"icon-star.png")
         
        // Default Menu
        var starMenuItem1 =  HanggeSwiftMenuItem(image:storyMenuItemImage!,
            highlightedImage:storyMenuItemImagePressed!, contentImage:starImage!,
            highlightedContentImage:nil)
        var starMenuItem2 =  HanggeSwiftMenuItem(image:storyMenuItemImage!,
            highlightedImage:storyMenuItemImagePressed!, contentImage:starImage!,
            highlightedContentImage:nil)
        var starMenuItem3 =  HanggeSwiftMenuItem(image:storyMenuItemImage!,
            highlightedImage:storyMenuItemImagePressed!, contentImage:starImage!,
            highlightedContentImage:nil)
        var starMenuItem4 =  HanggeSwiftMenuItem(image:storyMenuItemImage!,
            highlightedImage:storyMenuItemImagePressed!, contentImage:starImage!,
            highlightedContentImage:nil)
        var starMenuItem5 =  HanggeSwiftMenuItem(image:storyMenuItemImage!,
            highlightedImage:storyMenuItemImagePressed!, contentImage:starImage!,
            highlightedContentImage:nil)
        var starMenuItem6 =  HanggeSwiftMenuItem(image:storyMenuItemImage!,
            highlightedImage:storyMenuItemImagePressed!, contentImage:starImage!,
            highlightedContentImage:nil)
        var starMenuItem7 =  HanggeSwiftMenuItem(image:storyMenuItemImage!,
            highlightedImage:storyMenuItemImagePressed!, contentImage:starImage!,
            highlightedContentImage:nil)
        var starMenuItem8 =  HanggeSwiftMenuItem(image:storyMenuItemImage!,
            highlightedImage:storyMenuItemImagePressed!, contentImage:starImage!,
            highlightedContentImage:nil)
        var starMenuItem9 =  HanggeSwiftMenuItem(image:storyMenuItemImage!,
            highlightedImage:storyMenuItemImagePressed!, contentImage:starImage!,
            highlightedContentImage:nil)
         
        var menus =  [starMenuItem1, starMenuItem2, starMenuItem3, starMenuItem4,
            starMenuItem5, starMenuItem6, starMenuItem7,starMenuItem8,starMenuItem9]
         
        var startItem =  HanggeSwiftMenuItem(image:UIImage(named:"bg-addbutton.png")!,
            highlightedImage:UIImage(named:"bg-addbutton-highlighted.png")!,
            contentImage:UIImage(named:"icon-plus.png")!,
            highlightedContentImage:UIImage(named:"icon-plus-highlighted.png")
        )
         
        var menu =  HanggeSwiftMenu(frame:self.view.bounds, startItem:startItem, aMenusArray:menus)
        menu.delegate = self
        self.view.addSubview(menu)
         
    }
    
    func SwiftSelectMenu(menu:HanggeSwiftMenu, didSelectIndex idx:Int)
    {
         
        println("Select the index : %d",idx)
    }
     
    func HanggeSwiftMenuDidFinishAnimationClose(menu:HanggeSwiftMenu)
    {
         
        println("Menu was closed!")
    }
     
    func HanggeSwiftMenuDidFinishAnimationOpen(menu:HanggeSwiftMenu)
    {
         
        println("Menu is open!")
    }
     
    func HanggeSwiftMenuWillAnimateOpen(menu:HanggeSwiftMenu)
    {
         
    }
     
    func HanggeSwiftMenuWillAnimateClose(menu:HanggeSwiftMenu)
    {
         
    }
     
    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }
}

源码下载:HanggeMenu.zip

Swift - 炫酷放射弹出按钮菜单(改造自AwesomeMenu)的更多相关文章

  1. iOS开发——动画篇Swift篇&炫酷弹出菜单

    炫酷弹出菜单   这个是一个第三方按钮菜单组件,原版是使用Objective-C编写的名为AwesomeMenu的组件,地址是:https://github.com/levey/AwesomeMenu ...

  2. 炫酷实用的jQuery插件 涵盖菜单、按钮、图片

    新的一周开始了,今天我们要为大家分享一些全新的jQuery插件和HTML5/CSS3应用,这些jQuery插件不仅非常炫酷,而且还挺实用,这次的分享包含jQuery菜单.CSS3按钮已经多种图片特效, ...

  3. legend---四、菜鸟教程css3里面有教你炫酷的按钮怎么做

    legend---四.菜鸟教程css3里面有教你炫酷的按钮怎么做 一.总结 一句话总结:想学,总是有很多资料的 1. 自动居中是 margin:100px 0px;么? 自动居中是margin:100 ...

  4. 初级开发者也能码出专业炫酷的3D地图吗?

    好看的3D地图搭建出来,一定是要能为开发者所用与业务系统开发中才能真正地体现价值.基因于此,CityBuilder建立了与ThingJS的通道——直转ThingJS代码,支持将配置完成的3D地图一键转 ...

  5. 6种炫酷的CSS3按钮边框动画特效

    6种炫酷的CSS3按钮边框动画特效Button border animate 用鼠标滑过下面的按钮看看效果! Draw Draw Meet Center Spin Spin Circle Spin T ...

  6. CSS3和js炫酷点击按钮3D翻转动画特效

    简要教程 flipside是一款使用CSS3和js制作的炫酷点击按钮无缝过渡到确认面板的过渡动画特效.该点击按钮特效在按钮不同方向的边部点击时,产生的过渡动画特效是不一样的. 在线预览   源码下载 ...

  7. 炫酷实用的CSS3代码垂直手风琴菜单

    今天在微博上看到别人分享的代码,自己拿来自己保存着. 代码效果如下: 下面是源码: index.html <!DOCTYPE html> <html > <head> ...

  8. uwp - 做一个相对炫酷的动画按钮/按钮动画

    原文:uwp - 做一个相对炫酷的动画按钮/按钮动画 看腻了系统自带的button animation何不尝试下自定义一个较为炫酷的动画顺便提升用户体验.效果图: 动画分为几个部分,分别是:内圆从中心 ...

  9. css3 炫酷下拉菜单

    <!doctype html> <html> <head> <meta charset="UTF-8"> <title> ...

随机推荐

  1. C# 客户端服务端的编写

    客户端的代码 class client { public void mehod() { TcpClient tcp = new TcpClient(); tcp.Connect(IPAddress.P ...

  2. 距离变换DT

    距离变换:计算区域中的每个点与最接近的区域外的点之间距离,把二值图象变换为灰度图象. 对于目标中一个点,距离变换的定义为改点与目标边界最近的距离. 目标点离边界约近则值越小,转换的点越暗:越远,值越大 ...

  3. 自定义的Server

    自定义的Server 我们在上面对ASP.NET Core默认提供的具有跨平台能力的KestrelServer进行了详细介绍(<聊聊ASP.NET Core默认提供的这个跨平台的服务器——Kes ...

  4. Oracle单表的简单查询

    Oracle单表的简单查询 查看表结构 desc emp; 查询所有列 Select * from emp; 查找所以部门编号(查指定的列) select deptnofrom emp; 查找编号不同 ...

  5. Android智能手机屏蔽电话与屏蔽安装软件功能

    近期做一些项目.须要对手机进行屏蔽自己的固有的功能.在此记录. Android屏蔽电话功能主要是卸载掉Phone.apk. 屏蔽安装软件功能主要是卸载掉PackageInstall.apk 以下以三星 ...

  6. I/O操作技术

     对I/O操作有三种可能的技术:可编程I/O.中断驱动I/O.直接内存存取(DMA) 可编程I/O 当处理器正在运行程序并遇到一个与I/O相关的指令时,它通过给对应的I/O模块发命令来运行这个指令 ...

  7. 怎样安装配置tomcat 8

    链接地址:http://jingyan.baidu.com/article/ff42efa91132a0c19e220208.html Apache tomcat 是目前最为流行的java网站开发的服 ...

  8. 动态Pivot(1)

    原文 http://book.51cto.com/art/200710/58874.htm 7.7  动态Pivot 作为另外一个练习,假设你要编写一个存储过程,它生成动态Pivot查询.这个存储过程 ...

  9. 用js模拟struts2的多action调用

    近期修了几个struts2.1升级到2.3后动态方法调用失效的bug,深有感悟, 原始方法能够參考我之前的博文:struts2.1升级到2.3后动态调用方法问题 可是我那种原始方法有一个局限,就是在s ...

  10. 跟我一起写 Makefile(一)

    跟我一起写 Makefile  陈皓 概述—— 什么是makefile?也许非常多Winodws的程序猿都不知道这个东西,由于那些Windows的IDE都为你做了这个工作,但我认为要作一个好的和pro ...