Obl*_*pps 24 objective-c event-handling cocos2d-iphone ios6
我正在尝试使用UIActivityViewControllerCompletionHandler ,但我不知道如何...
我想检测用户何时完成或关闭此视图控制器(UIActivityViewController).
谁知道怎么样?
thg*_*hgc 67
以下是显示共享对话框并设置其完成处理程序的方法
NSArray *imageArray = [NSArray arrayWithObject:shareImage];
UIActivityViewController *sharing = [[UIActivityViewController alloc] initWithActivityItems:imageArray applicationActivities:nil];
[sharing setCompletionHandler:^(NSString *activityType, BOOL completed) {
NSLog(@"completed dialog - activity: %@ - finished flag: %d", activityType, completed);
}];
[self presentViewController:sharing animated:YES completion:nil];
Run Code Online (Sandbox Code Playgroud)
Ant*_*nko 21
iOS 8 completionHandler已弃用,因此您需要提供替代方案completionWithItemsHandler.它还允许处理您设置的扩展修改数据(例如Photo Extension).见文档
UIActivityViewController *activityViewController = [[UIActivityViewController alloc] initWithActivityItems:@[text, URL, image] applicationActivities:nil];
activityViewController.excludedActivityTypes = @[UIActivityTypePrint, UIActivityTypeCopyToPasteboard, UIActivityTypeAssignToContact, UIActivityTypeAirDrop, UIActivityTypeAddToReadingList];
// check if new API supported
if ([activityViewController respondsToSelector:@selector(completionWithItemsHandler)]) {
activityViewController.completionWithItemsHandler = ^(NSString *activityType, BOOL completed, NSArray *returnedItems, NSError *activityError) {
// When completed flag is YES, user performed specific activity
};
} else {
activityViewController.completionHandler = ^(NSString *activityType, BOOL completed) {
// When completed flag is YES, user performed specific activity
};
}
Run Code Online (Sandbox Code Playgroud)
sob*_*bri 19
typedef void (^UIActivityViewControllerCompletionHandler)
(NSString *activityType, BOOL completed);
Run Code Online (Sandbox Code Playgroud)
完成处理程序的第二个参数告诉您用户是否解除了控制器.如果他们解雇了控制器,completed将被设置为NO.
完成处理程序的文档中有更多详细信息.
| 归档时间: |
|
| 查看次数: |
12508 次 |
| 最近记录: |