其他分享
首页 > 其他分享> > IRMenuPopover

IRMenuPopover

作者:互联网

原码地址

一个轻量级的menuPop可以通完 *IRMenuPopoverGlobal.h

文件进行弹出框的圆角及其它的基本信息的设置,可以通过storyboard或masonry使用
*

效果图

注意事项

使用

通过此代理方法获取所选中的值 menuPopover:didSelectMenuItemAtIndex:

需实现 IRMenuPopoverDelegate 的两个代理方法

使用方法1

1234567
NSArray * menuSelectOption = @[@"医生",@"警察",@"农民",@"工人"];IRMenuPopover *menuPopver = [[IRMenuPopover alloc] initWithTargetFrame:targetFrame menuItems:menuSelectOption showArrow:YES scrollEnabled:YES];menuPopver.menuPopoverDelegate = self;[self.menuPopver show];

#API介绍

自动适配弹出框显示的位置

initWithTargetFrame:menuItems:showArrow:scrollEnabled:

自动对框框进行布局,targetFrame为目标控件的frame
框框自身的size由IRMenuPopoverGlobal.h文件配制
框框在目标控件上显示的位置自动生成
箭头的位置根据所显示的框框的位置自行以适配

1234567891011121314
 自动对框框进行布局,targetFrame为目标控件的frame 框框自身的size由IRMenuPopoverGlobal.h文件配制 框框在目标控件上显示的位置自动生成 箭头的位置根据所显示的框框的位置自行以适配 @param targetFrame 目标控件的位置 @param aMenuItems 显示的列表项 @param showArrow 是否显示箭头 @param scrollEnabled 内部的列表项是否可以滚动 @return 选择框 */- (id)initWithTargetFrame:(CGRect)targetFrame menuItems:(NSArray *)aMenuItems showArrow:(BOOL)showArrow scrollEnabled:(BOOL)scrollEnabled;

弹出框的位置通过isTop级对弹出框的布局决定

initWithFrame:menuItems:showArr 大专栏  IRMenuPopoverow:scrollEnabled:isTop:

123456789101112
 通过外部对框框的布局配合isTop进行生成框框 @param frame 框框要显示的位置 @param aMenuItems 显示的列表项 @param showArrow 是否显示箭头 @param scrollEnabled 内部的列表项是否可以滚动 @param isTop 是否在控件上面显示【需要与外部框框的布局配合使用】 @return 选择框 */- (id)initWithFrame:(CGRect)frame menuItems:(NSArray *)aMenuItems showArrow:(BOOL)showArrow scrollEnabled:(BOOL)scrollEnabled isTop:(BOOL)isTop;

###使用

1234567891011121314151617181920212223242526272829
#pragma mark - 特别提示,此处的menuPopver是弹出的框框IRMenuPopover* menuPopver = [[IRMenuPopover alloc] initWithFrame:CGRectMake(self.menuPopoverX, menuPopoverY, MENU_POP_VIEW_WIDTH, MENU_POP_VIEW_HEIGHT) menuItems:self.menuItems showArrow:YES scrollEnabled:YES isTop:NO];self.menuPopver.menuPopoverDelegate = self;[self.menuPopver showInView:[UIApplication sharedApplication].keyWindow];#pragma mark - 特别提示,此处的布局是弹出框框的位置布局 *  当isTop=YES的时候 */[self.menuPopver mas_makeConstraints:^(MASConstraintMaker *make) {//下  *** 当isTop == NO 的时候,此处必须为这句布局  make.top.equalTo(self.mas_bottom);//上  *** 当isTop == YES的时候,此处必须为这句布局,否则会出现布局乱混//        make.bottom.equalTo(self.mas_top);//左  ** 当框框在左面显示的时候//        make.left.equalTo(self.mas_left);//右  ** 当框框在右面显示的时候  make.right.equalTo(self.mas_right);  make.height.mas_equalTo(MENU_POP_VIEW_HEIGHT);  make.width.mas_equalTo(MENU_POP_VIEW_WIDTH);}];

标签:scrollEnabled,IRMenuPopover,self,param,isTop,框框,showArrow
来源: https://www.cnblogs.com/liuzhongrong/p/12269218.html