Skip to content

irons163/IRPopupMenu

Repository files navigation

IRPopupMenu

This project is copy and change from YBPopupMenu. Implemet custom arrow icon.
  • Custom popupMenu

效果图

(演示效果) (演示效果)

cocoapods支持

  • 只需在Podfile中加入pod 'IRPopupMenu', '~> 1.0.0'pod install即可

最近更新

  • 开放部分私有属性,如titlesimages,tableView,minSpace等等
  • 点击回调方法有更新(旧的还可以用)
  • 增加可自定义Cell的回调,遇到奇葩需求可以自定义设置(具体使用方法可参考demo)

上次更新

  • 代码全部重构,不过完全兼容原先的API接口
  • 增加了IRPopupMenuPriorityDirection属性,可以设置箭头的第一优先级方向,当将要超过屏幕时会自动反转方向
  • 增加了rectCorner属性,可以自定义圆角(当反转时会自动镜像的反转圆角)
  • 可以设置边框颜色,边框粗细等
  • 支持传入NSAttributedString

注意

  1. 当箭头优先级是IRPopupMenuPriorityDirectionLeft/IRPopupMenuPriorityDirectionRight/IRPopupMenuPriorityDirectionNone时需手动设置arrowPosition来设置箭头在该行的位置
  2. 边框宽度不宜过粗,影响美观
  3. 推荐使用新的实例化接口

使用方法

  • #import "IRPopupMenu.h"
  • 方法一 (旧)
IRPopupMenu * popupMenu = [IRPopupMenu showRelyOnView:sender titles:TITLES icons:ICONS menuWidth:120 delegate:self];
popupMenu.dismissOnSelected = NO;
popupMenu.isShowShadow = YES;
popupMenu...;
  • 方法二 (推荐)
[IRPopupMenu showAtPoint:p titles:TITLES icons:nil menuWidth:110 otherSettings:^(IRPopupMenu *popupMenu) {
      popupMenu.dismissOnSelected = NO;
      popupMenu.isShowShadow = YES;
      popupMenu.delegate = self;
      popupMenu.offset = 10;
      popupMenu.type = IRPopupMenuTypeDark;
      popupMenu.rectCorner = UIRectCornerBottomLeft | UIRectCornerBottomRight;
      popupMenu...;
  }];

版本支持

  • xcode7.0+