首页 > 其他 > 详细

UIMenuController和UIMenuItem的使用

时间:2016-07-06 23:27:07      阅读:571      评论:0      收藏:0      [点我收藏+]

UIMenuController的方法:

1.创建menucontroller

+ (UIMenuController *)sharedMenuController;

2.设置是否可见

- (void)setMenuVisible:(BOOL)menuVisible animated:(BOOL)animated;

3.设置显示的位置

- (void)setTargetRect:(CGRect)targetRect inView:(UIView *)targetView;

4.有一个存储数据的属性:@property(nullable, nonatomic,copy) NSArray<UIMenuItem *> *menuItems;

  用set方法来调用,例如:

[menu setMenuItems:[NSArray arrayWithObjects:copyItem,resendItem,resendItem1,resendItem2,resendItem3,nil]];


UIMenuItem的使用:

- (instancetype)initWithTitle:(NSString *)title action:(SEL)action;

 

例子:

//设置menucontroller的数据源

- (NSArray *)showMenuItems

{

    NSMutableArray *array = [NSMutableArray array];

    UIMenuItem *deleteItem = [[UIMenuItem alloc] initWithTitle:@"删除" action:@selector(deleteItem:)];

    [array addObject:deleteItem];

    

    if (_msg.status == EIMAMsg_SendFail)

    {

        UIMenuItem *resendItem = [[UIMenuItem alloc] initWithTitle:@"重发" action:@selector(resendItem:)];

        [array addObject:resendItem];

    }

    return array;   

}

//设置menucoller的属性

- (void)showMenu

{

    NSArray *showMenus = [self showMenuItems];

    if (showMenus.count)

    {

        [self becomeFirstResponder];

        UIMenuController *menu = [UIMenuController sharedMenuController];

        [menu setMenuItems:showMenus];

        [menu update];

        [menu setTargetRect:_contentBack.frame inView:self.contentView];

        [menu setMenuVisible:YES animated:YES];

    }

}

UIMenuController和UIMenuItem的使用

原文:http://www.cnblogs.com/lyz0925/p/5648355.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!