相关疑难解决方法(0)

我应该修复Xcode 5'语义问题:未声明的选择器'吗?

我正在尝试使用Xcode5升级我的应用程序,但在第三方库(MagicalRecord)中遇到了许多"语义问题"."修复"这个的最快方法可能是使用:

#pragma GCC diagnostic ignored "-Wundeclared-selector"
Run Code Online (Sandbox Code Playgroud)

(来自:如何摆脱'未声明的选择器'警告)

编译器指令,但我的直觉说这不是这样做的合适方式.带有上述错误的小代码示例:

+ (NSEntityDescription *) MR_entityDescriptionInContext:(NSManagedObjectContext *)context {

    if ([self respondsToSelector:@selector(entityInManagedObjectContext:)]) 
    {
        NSEntityDescription *entity = [self performSelector:@selector(entityInManagedObjectContext:) withObject:context];
        return entity;
    }
    else
    {
        NSString *entityName = [self MR_entityName];
        return [NSEntityDescription entityForName:entityName inManagedObjectContext:context];
    }
}
Run Code Online (Sandbox Code Playgroud)

其中entityInManagedObjectContext:没有定义方法的地方.

有关如何最好地解决这些类型的错误的任何建议,提前谢谢?!

selector ios xcode5 semantics

31
推荐指数
4
解决办法
2万
查看次数

UIMenu在CollectionView中使用

这就是我设置弹出窗口的方式

UIMenuItem *menuItem = [[UIMenuItem alloc] initWithTitle:@"Delete Patient"

                                                  action:@selector(customAction:)];



[[UIMenuController sharedMenuController] setMenuItems:@[menuItem]];
Run Code Online (Sandbox Code Playgroud)

然后添加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);

}

}
Run Code Online (Sandbox Code Playgroud)

这适用于iOS6,但现在不适用.以下方法未被调用,应该在我点击并按住时调用

- (BOOL)canPerformAction:(SEL)action withSender:(id)sender
Run Code Online (Sandbox Code Playgroud)

uimenucontroller ios

2
推荐指数
1
解决办法
806
查看次数

标签 统计

ios ×2

selector ×1

semantics ×1

uimenucontroller ×1

xcode5 ×1