从UITableView内部的UITextView复制文本

时间:2019-01-11 16:49:05

标签: objective-c uitableview uitextview

我有一个具有图像视图,UILabel和TextView的tableview单元。我希望用户长按TextView时能够从TextView中选择文本。

我为该单元格创建了一个手势识别器,当用户长按该单元格时,该手势识别器被调用,但是我没有菜单或光标供用户选择文本和然后复制它。下面是将长按附加到UITableView单元格的代码

  UILongPressGestureRecognizer* longPressRecognizer =     [[UILongPressGestureRecognizer alloc] initWithTarget:self   action:@selector(LongPressgesture:)];
 [tableView addGestureRecognizer:longPressRecognizer];

我还有以下被调用的代码

- (void)LongPressgesture:(UILongPressGestureRecognizer *)gesture{
    if (gesture.state == UIGestureRecognizerStateEnded) {
        NSLog(@"Long press Ended .................");
     }
    else {
        NSLog(@"Long press detected .....................");
    }
}

该函数被调用,因此我在输出日志中看到消息“ Long press Detected”,但没有菜单来复制文本。我尝试在“长按”部分创建菜单,如下所示:

    UIMenuItem *menuItem = [[UIMenuItem alloc] initWithTitle:@"Copy" action:@selector(copyText:)];

    UIMenuController *menuCont = [UIMenuController sharedMenuController];

    [menuCont setTargetRect:CGRectMake(10, 100, 400, 400) inView:tableview];

    menuCont.arrowDirection = UIMenuControllerArrowDown;
    menuCont.menuItems = [NSArray arrayWithObject:menuItem];
    [menuCont setMenuVisible:YES animated:YES];

但是没有调用复制文本功能,并且没有菜单。

谢谢!

0 个答案:

没有答案