AUPopMenu 组件提供导航栏选项卡点击弹出菜单的功能。
AUPopMenu 与 AUFloatMenu 区别在于无底面蒙层,有外围边框,所有布局以居中的形式,分割线固定长度保持居中。该组件由业务控制向上或向下弹出,且业务指定弹出的位置。
效果图
接口说明
AUPopMenu.h
@protocol AUPopMenuDelegate <NSObject> @optional - (void)DidClickPopItemView:(AUPopItemModel *)viewModel; @end @interface AUPopMenu : UIView @property (nonatomic, weak) id<AUPopMenuDelegate> delegate; /* datas 是 AUPopItemModel 对象列表 * position 方向尖角所在位置 * superView 所在父 view * isArchViewUp 方向角的朝向,默认朝下 */ - (instancetype)initWithDatas:(NSArray *)datas position:(CGPoint)position superView:(UIView *)superView isArchViewUp:(BOOL)isArchViewUp; /* 默认带动画展示和隐藏 * position 指定方向角的起始位置 * superView 描述当前浮层展示在哪个父 view 上 */ - (void)showMenu; // - (void)hideMenu; @end
AUPopItemView.h
@interface AUPopItemView : AUPopItemBaseView @property (nonatomic, strong) AUIconView *iconView; // 支持 iconfont 图标 //@property (nonatomic, strong) UIView *badgeView // 暂不支持红点 - (instancetype)initWithModel:(AUPopItemModel *)model position:(CGPoint )position; @end
AUPopItemBaseView.h
// @interface AUPopItemBaseView : UIControl @property (nonatomic, strong) AULabel *titleLabel; // @end
AUPopItemModel.h
// 对象模型 @interface AUPopItemModel : NSObject @property (nonatomic, strong) NSString *titleString; // 主文案描述 @property (nonatomic, strong) id iconImage; // 左侧 icon,可以传 UIImage 对象或者 URL @end
代码示例
_menu = [[AUPopMenu alloc] initWithDatas:array position:CGPointMake(CGRectGetMidX(button.frame), CGRectGetMaxY(button.frame)+5) superView:self.view isArchViewUp:YES];
_menu.delegate = self;
[_menu showMenu];
文档内容是否对您有帮助?