1.在某个view 的.m文件中加上
- (BOOL)canBecomeFirstResponder
{
return YES;
}
2.例如写个长按的方法 的代理出来
// 长按钮
- (void)m80AttributedLabel:(M80AttributedLabel *)label longPressWtihText:(NSString *)text longPressPoint:(CGPoint)point{
[label becomeFirstResponder];
UIMenuItem *myCopyItem = [[UIMenuItem alloc] initWithTitle:@"拷贝" action:@selector(myCopyItemClick:)];
UIMenuItem *myCollectionItem = [[UIMenuItem alloc] initWithTitle:@"收藏" action:@selector(myCollectionItemClick:)];
UIMenuController *menuController = [UIMenuController sharedMenuController];
[menuController setMenuItems:@[myCopyItem,myCollectionItem]];
[menuController setTargetRect:label.frame inView:label.superview];
[menuController setMenuVisible:YES animated:YES];
}
- (BOOL)canPerformAction:(SEL)action withSender:(id)sender {
if (action == @selector(myCopyItemClick:)) { // copy
return YES;
}else if(action == @selector(myCollectionItemClick:)){ // 收藏
return YES;
}
return NO;
}
// 拷贝
- (void)myCopyItemClick:(UIMenuController *)menu {
// 将当前label的文字设置到粘贴板
//[UIPasteboard generalPasteboard].string = self.text;
}
// 收藏
- (void)myCollectionItemClick:(UIMenuController *)menu {
}