Swift实现封装PopMenu菜单,可在屏幕任意位置弹出

效果图:

说明:

代码现已支持 Swift3 语法

使用介绍:

1、初始化位置

//frame 为整个popview相对整个屏幕的位置  箭头距离右边位置,默认15
//popMenu =  SwiftPopMenu(frame: CGRect(x: KSCREEN_WIDTH - 155, y: 51, width: 150, height: 112))
//frame 为整个popview相对整个屏幕的位置 arrowMargin :指定箭头距离右边距离
popMenu = SwiftPopMenu(frame:  CGRect(x: KSCREEN_WIDTH - 155, y: 51, width: 150, height: 112), arrowMargin: 12)

  



//*  ----------  可变参数 - 注意:设置属性要写在设置 popData数据源 前面!!------------- */
//小箭头距离右边距离
    var arrowViewMargin : CGFloat = 15
    //圆角弧度
    var cornorRadius:CGFloat = 5

    //pop文字颜色
    var popTextColor:UIColor = UIColor(red: 107 / 255.0, green: 107 / 255.0, blue: 107 / 255.0, alpha: 1.0)
    //pop背景色
    var popMenuBgColor:UIColor = UIColor.white

  

        popMenu.popData = [(icon:"saoyisao",title:"扫一扫"),
                           (icon:"SignRule",title:"签到规则")]

  

2、显示与移除

popMenu.show()

popMenu.dismiss()

3、点击事件  ,block回调处理

//点击菜单
popMenu.didSelectMenuBlock = { [weak self](index:Int)->Void in
            self?.popMenu.dismiss()
            print("block select \(index)")
}

最新源码下载:https://github.com/TangledHusky/SwiftPopMenu

            
时间: 2024-10-16 15:56:16

Swift实现封装PopMenu菜单,可在屏幕任意位置弹出的相关文章

Delphi XE7实现的任意位置弹出菜单

Delphi XE7中目前还没有弹出菜单组件,这个弹出菜单应用很普遍,在Java开发的安卓程序中很简单就可以用上了,应该说是一个标准控件.看了一些例子,但是都不能满足我想在任意位置弹出菜单需求,于是自己在网上找了一个例子,修改后实现了我的在任意位置弹出菜单需求!全部代码如下: { 功能:DelphiXE7里面实现的弹出菜单 ------------------------------------------------------------------------------ 说明:实现在任意

锁屏状态下点亮屏幕,并弹出闹钟提示信息

锁屏状态下点亮屏幕,并弹出闹钟提示信息,可以在锁屏界面上取消闹钟:使用广播接收闹钟定时: 下面是例子里的核心代码如下 android 设置定时闹钟(包括提醒一次和循环提醒):Intent intent = new Intent(MainActivity.this,MyAlarmBroadCast.class);                  PendingIntent pendingIntent = PendingIntent.getBroadcast(getApplicationConte

Dialog(九)——利用WindowManager在屏幕任意位置添加Dialog

MainActivity如下: package cn.testalertdialog; import android.app.Activity; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.View.OnClickListener; import android.view.WindowManager; import andro

点击某个按钮,让菜单选项从按钮周围指定位置弹出。

Android Material Design:PopupMenu Android Material Design 引入的PopupMenu类似过去的上下文菜单,但是更灵活. 如图所示: 现在给出实现上图PopupMenu的代码. 本例是一个普通的Button触发弹出PopupMenu. 测试的MainActivity.java : [java] view plaincopyprint? package zhangphil.materialdesign; import android.app.A

Swift语言 OS X程序点击dock图标重新弹出窗口方法

最近在做一个好玩的OSX上的软件,欢迎关注我微博哦http://weibo.com/u/2009667563/home?wvr=5&lf=reg 本文在简书的地址:http://www.jianshu.com/p/dedb26762055 方法一: func applicationShouldHandleReopen(sender: NSApplication, hasVisibleWindows flag: Bool) -> Bool { if !flag{ let sb = NSStor

js点击任意区域弹出层消失,js点击弹出层之外的任意区域弹出层消失,常见弹层的封装

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> </head> <body> <style type="text/css"> *{margin:0;padding:0;} .warp{overflow:hidden;} .div1,.div2,.div3,.div4{wi

长按power键弹出关机菜单,点击关机会弹出提示框,点击重启没有提示框确认直接进入重启状态,添加确认提示框

--- a/idh.code/frameworks/base/core/res/res/values-es/strings.xml +++ b/idh.code/frameworks/base/core/res/res/values-es/strings.xml @@ -1710,5 +1710,5 @@ <string name="station_state_connected">"Stación %1$s esta conectada"</st

Android弹出菜单

在实际开发中,我们可能会用到toolbar控件,然后还要在右上角添加弹出菜单,但是toolbar弹出菜单,实在是不好控制位置,因此用户体验很是不好,所以 就想到了用popupwindow来代替弹出的菜单.话不多说先看效果(文章末尾有demo下载地址): 效果还是基本能接受的. 下面讲讲实现过程: 一:菜单布局,很简单,和一般的布局一样,linearlayout中包裹textview和imageview(需要图片的话) <?xml version="1.0" encoding=&q

iOS_21团购_顶部菜单和弹出菜单联动

最后效果图: 各控件关系图1: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcHJlX2VtaW5lbnQ=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" >\ 各控件关系图2: 点击Dock上面的buttonDockItem, 创建经导航控制器包装的DealListController, 而且加入到主控制器的右側空间 // // Deal