ios - UIActivityViewController 上缺少关闭按钮

标签 ios objective-c ios6 uiactivityviewcontroller

我目前正在对 iOS 应用程序进行一些更新。对于更新,我将利用 iOS6 功能。我正在使用 UIActivityViewController 来完成此操作以及一些自定义 UIActivity 事件。我遇到的主要问题是没有“取消”或“关闭”按钮。退出事件 View 的唯一方法是向社交网络发布某些内容,或者表现得像要发布然后取消。

NSArray* dataToShare = [[NSArray alloc] initWithObjects:@"blah", nil];
// Custom activities are allocated here
NSArray* customActivities = [[NSArray alloc] initWithObjects:activities, nil];
NSArray* excludedActivities = [[NSArray alloc] initWithObjects:exclusions, nil];

activityController = [[UIActivityViewController alloc] initWithActivityItems:formatArray applicationActivities:customActivities];
activityController.excludedActivityTypes = excludedActivities;

activityController.modalPresentationStyle = UIModalPresentationFormSheet;
[[UIApplication sharedApplication].keyWindow addSubview:self.view];
[[UIApplication sharedApplication].keyWindow bringSubviewToFront:activityController.view];
[self presentViewController:activityController animated:YES completion:^{ closureCode
}];

这在网络内容方面完成了事件 Controller 内部所需的一切,只是没有关闭按钮。我不知道这是否是同一个问题,但是当 View 消失时,如果我尝试再次调出“共享”菜单,它会告诉我

<UIActivityViewController: 0x1e0db7d0>  on <ShareDelegate: 0x1e048490> which is already presenting <UIActivityViewController: 0x21b1d4f0>

想法?提前致谢!

*我正在使用:

  • iPad 2
  • Objective-C/C++
  • XCode 4.5
  • iOS6

最佳答案

来自 UIActivityViewController 的文档(重点是我的):

When presenting the view controller, you must do so using the appropriate means for the current device. On iPad, you must present the view controller in a popover. On iPhone and iPod touch, you must present it modally.

在 iPad 上,用户点击弹出框外部即可取消弹出框。

在 iPhone/iPod touch 上,模态视图 Controller 将显示一个取消按钮。

简而言之,不要在 iPad 上使用表单。

关于ios - UIActivityViewController 上缺少关闭按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14570753/

相关文章:

objective-c - 如何像 "filteredArrayUsingPredicate"那样过滤NSFetchedResultsController

iphone - 使用 remoteIO 生成 iPhone 音频时如何防止爆音?

ios - 当表格 View 向上滚动时,表格 View 第一部分(第 0 部分)没有向上移动

objective-c - ios 6 中的 UITabBarController 旋转问题

ios - 单例不会跨 View Controller /spritekit 场景持续存在

ios - iOS Level Editor未连接到我的Skscene

ios - 使用另一行时模糊 UIPickerView 行之一

objective-c - UIActivityViewController 完成处理程序如何?

iphone - 打乱数组未捕获异常

iphone - iOS内存管理跟进。 dealloc 与零?