UITextView中的UIMenuController

2017-09-10  本文已影响0人  牛程程

单例UIMenuController的实例用来显示复制,粘贴,选择,全选,删除等功能的菜单界面。
UITextView,UITextField,UIWebView默认支持UIMemuController。
有时需要修改UIMemuController中的item,代码如下:

//放在ViewDidLoad方法中
        UIMenuItem *peiMenuItem = [[UIMenuItem alloc]initWithTitle:@"配音" action:@selector(peiYinClick:)];
        UIMenuItem *allMenuItem = [[UIMenuItem alloc]initWithTitle:@"全选" action:@selector(allSelectClick:)];
        UIMenuController *menuController = [UIMenuController sharedMenuController];
        [menuController setMenuItems:@[peiMenuItem, allMenuItem]];


-(BOOL)canPerformAction:(SEL)action withSender:(id)sender
{
    if (action == @selector(peiYinClick:))
    {
        return YES;
    }
    else if(action == @selector(allSelectClick:))
    {
        return YES;
    }
    return NO;
}

- (void)peiYinClick:(id)sender
{
    
    NSLog(@"配音");
}
- (void)allSelectClick:(id)sender
{
    
    NSLog(@"全选");
}

如果想不显示系统自带的功能,需要自定义一个textView继承UITextView,将上面的代码在初始化的地方,并且重写相应的方法。效果图如下:

自定义UIMemuController.png
上一篇下一篇

猜你喜欢

热点阅读