Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/117.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios NSMetadataQueryIDUpdateNotification不工作_Ios_Icloud - Fatal编程技术网

Ios NSMetadataQueryIDUpdateNotification不工作

Ios NSMetadataQueryIDUpdateNotification不工作,ios,icloud,Ios,Icloud,有人能告诉我我从iOS5开发者食谱中改编的以下代码有什么问题吗 - (void) startMonitoringUbiquitousDocumentsFolder { // Remove any existing query – stored in local instance variable if (alertQuery) [alertQuery stopQuery]; // Search for all file names alertQuery.pred

有人能告诉我我从iOS5开发者食谱中改编的以下代码有什么问题吗

- (void) startMonitoringUbiquitousDocumentsFolder
{
    // Remove any existing query – stored in local instance variable
    if (alertQuery) [alertQuery stopQuery];

    // Search for all file names
    alertQuery.predicate = [NSPredicate predicateWithFormat: @"NSMetadataItemFSNameKey == '*'"];
    alertQuery.searchScopes = [NSArray arrayWithObject:
   NSMetadataQueryUbiquitousDocumentsScope];

    // Subscribe to query updates

    [[NSNotificationCenter defaultCenter]
             addObserver:self
             selector:@selector(alertUserToUpdates:)
             name:NSMetadataQueryDidUpdateNotification
             object:nil];

    [alertQuery startQuery];
}

- (void) alertUserToUpdates
{
    NSLog(@"Contents changed in ubiquitous documents folder");

    UIAlertView *alertView = [[UIAlertView alloc]
                              initWithTitle:@"Home Monitor"
                              message:@"Something's going on."
                              delegate:nil
                              cancelButtonTitle:@"OK"
                              otherButtonTitles:@"Check Recording", nil];
    [alertView show];
    [self stopMonitoringUbiquitousDocumentsFolder];
}
我得到一个异常,它表示选择器AlertUserToUpdate:无法识别。为什么它不能识别出它旁边明显正确的方法

2013-04-29 18:07:22.458 eyeFun[8231:907] -[RGPViewController alertUserToUpdates:]: unrecognized selector sent to instance 0x1fd506a0
2013-04-29 18:07:22.462 eyeFun[8231:907] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[RGPViewController alertUserToUpdates:]: unrecognized selector sent to instance 0x1fd506a0'
*** First throw call stack:
(0x337eb3e7 0x3b4e6963 0x337eef31 0x337ed64d 0x33745208 0x3373c349 0x34053b7f 0x340ab327 0x3373c349 0x337b810f 0x37880de9 0x340fa657 0x337c0857 0x337c0503 0x337bf177 0x3373223d 0x337320c9 0x3731133b 0x3564e2b9 0x465b5 0x3b913b20)
libc++abi.dylib: terminate called throwing an exception

因为它不在它旁边

您告诉它使用名为
AlertUserToUpdate:
的选择器。您有一个名为
AlertUserToUpdate
的方法。
很重要——它说方法只接受一个参数,但实际的方法不接受参数


您的方法应该采用类型为
NSNotification

的参数。也可以使用
@selector(AlertUserToUpdate)
更新选择器以指向您的方法-通知中心不介意调用不采用
NSNotification
参数的方法。但大多数情况下,接受参数是一个更好的主意。多亏了这两种回答。我感谢你的帮助。