我就是这样设置弹出式的
UIMenuItem *menuItem = [[UIMenuItem alloc] initWithTitle:@"Delete Patient"
action:@selector(customAction:)];
[[UIMenuController sharedMenuController] setMenuItems:@[menuItem]];然后添加require方法。
- (BOOL)canBecomeFirstResponder {
return YES;
}
- (BOOL)canPerformAction:(SEL)action withSender:(id)sender {
NSLog(@"canPerformAction");
// The selector(s) should match your UIMenuItem selector
if (action == @selector(customAction:)) {
return YES;
}
return NO;
}
- (void) customAction:(id) sender
{
for (Treatment *t in self.ptToDelete.patientRx) {
[self.managedObjectContext deleteObject:t];
}
[self.managedObjectContext deleteObject:self.ptToDelete];
NSError *error = nil;
if (![self.managedObjectContext save:&error]) {
NSLog(@"Error! %@", error);
}
}这对于iOS6是可行的,但现在不行了。下面的方法没有被调用,应该在我点击和持有时调用
- (BOOL)canPerformAction:(SEL)action withSender:(id)sender发布于 2013-09-14 06:34:17
我发现在我的CollectionViewCell类中需要有以下内容。然而,这在ios6中并不是必需的。希望这能节省几个小时。
- (BOOL)canPerformAction:(SEL)action withSender:(id)sender
{
// The selector/s should match your UIMenuItem selector
if (action == @selector(customAction:)) {
return YES;
}
return NO;
}
- (void) customAction:(id)sender
{
// do stuff
}https://stackoverflow.com/questions/18774265
复制相似问题