1

这几天我一直在搞砸。我是 xcode 的新手.. 但只是不明白为什么我不断收到此错误。我已经尝试过......我希望有人可以帮助我。感谢您的时间

- (void)longPressAction:(UILongPressGestureRecognizer *)gestureRecognizer
{
    CGPoint touchLocation = [gestureRecognizer locationInView:self.webView];

    NSString *javascript = [NSString stringWithFormat:@"document.elementFromPoint(%f, %f).src", touchLocation.x, touchLocation.y];
    NSString *imageUrl = [self.webView stringByEvaluatingJavaScriptFromString:javascript];

    NSData *imageData = [NSData dataWithContentsOfURL:[NSURL URLWithString:imageUrl]];
    UIImage *image = [UIImage imageWithData:imageData];

    // Show the editor
    ImageEditorViewController *editView = [[ImageEditorViewController alloc] initWithImageAndSaveName:image saveName:[imageUrl lastPathComponent]];
    [self.navigationController pushViewController:editView animated:YES];
}
4

2 回答 2

1

在 .h 文件中查找“ ImageEditorViewController”,并查看其中是否有“ initWithImageAndSaveName:saveName:'”的方法声明。

还要确保将 ImageEditorViewController.h 文件导入到包含“ longPressAction”方法的 .m 文件中。

于 2013-03-22T05:11:08.340 回答
0

它只是想告诉您不存在具有该名称的方法。有两个地方可以编写该方法。一种是在@interface 和@end 之间的头文件中。另一个位置是将它放在 .m 文件的 @implementation 和 @end 部分之间。我会推荐后者,除非您计划将此类子类化并让另一个类使用该方法。只在@implementation 中声明它,然后在您自己的方法中私下引用它,这样会更简洁一些。

但是,基本上,为了保持简短和简单,该方法当前不存在,如果您想使用它,您需要实现它。

于 2013-03-22T05:11:38.857 回答