#import <UIKit/UIKit.h>
@class RXPopMenuItem;
typedef enum : NSUInteger {
RXPopMenuList = 0,
RXPopMenuBox,
} RXPopMenuType;
@interface RXPopMenu : UIView
#pragma mark - ShowMenu
/** 创建弹出框 */
+ (id)menuWithType:(RXPopMenuType)type;
/** 隐藏弹出框 */
+ (void)hideBy:(id)target;
/** 展示弹出框 修改任意属性要在该方法调用前
* target: 弹出框指向控件 可以是view或者UIBarButtonItem
* items: 弹出框包含的选项
*/
- (void)showBy:(id)target withItems:(NSArray <RXPopMenuItem *>*)items;
/**
* 如果这时候键盘处于弹起状态 可以将键盘高度传入 避免菜单被键盘遮挡
* 键盘高度可以用项目中的一个全局单例监听KeyboardNotification来记录
*/
- (void)showBy:(id)target withItems:(NSArray <RXPopMenuItem *>*)items keyboardHeight:(CGFloat)keyboardHeight;
/** 点击事件
* 可以用 item.index 或者 item.title 区分响应操作
*/
@property (nonatomic, copy) void (^itemActions)(RXPopMenuItem * item);
@property (nonatomic, copy) void (^menuHideDone)(void);
#pragma mark - Options
/** 弹出框是否隐藏箭头 默认 NO */
@property (nonatomic, assign) BOOL hideArrow;
/** 弹出元素是否隐藏图片 默认 NO */
@property (nonatomic, assign) BOOL hideImage;
/** 弹出框大小 默认 CGSizeMake(图片宽度+文字最大宽度, 50 * items.count) */
@property (nonatomic, assign) CGSize menuSize;
/** 单个元素高度 默认 50.f */
@property (nonatomic, assign) CGFloat itemHeight;
@end
#pragma mark -
@interface RXPopMenuItem : NSObject
+ (id)itemTitle:(NSString *)title;
@property (nonatomic, assign) NSInteger index;
@property (nonatomic, strong) NSString * title;
@property (nonatomic, strong) NSString * image;
@property (nonatomic, strong) UIColor * titleColor;
@property (nonatomic, strong) UIFont * titleFont;
@end
没有合适的资源?快使用搜索试试~ 我知道了~
iOS开发 点击按钮弹出按钮列表菜单
共7个文件
m:3个
h:3个
ds_store:1个
0 下载量 166 浏览量
2023-07-21
14:55:45
上传
评论 1
收藏 11KB ZIP 举报
温馨提示
封装的一个跟随点击视图弹出菜单列表,按钮列表的控件
资源推荐
资源详情
资源评论
收起资源包目录
RXPopMenu.zip (7个子文件)
RXPopMenu
.DS_Store 6KB
RXPopMenuArrow.m 976B
RXPopMenu.m 13KB
RXPopMenu.h 2KB
RXPopBoxCell.m 1KB
RXPopMenuArrow.h 278B
RXPopBoxCell.h 409B
共 7 条
- 1
资源评论
小二白菜
- 粉丝: 8
- 资源: 5
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功