UIActivityViewController.如何定制呢?

use*_*847 7 objective-c ipad ios ios6

我想UIActivityViewController在我的iPad应用程序中创建一个但我在Google上找不到任何内容,因为它是仅在iOS 6中实现的新视图. UIActivityView当用户点击例如照片应用程序内的共享按钮时,该视图会出现.一组活动由活动视图控制器呈现(通过电子邮件发送,在Facebook上分享,打印ecc ...).每个活动都由图标下方的图标和标题表示.现在我想自定义视图中的项目,但我找不到怎么做?有任何想法吗?

Cal*_*leb 8

没有必要继承UIActivityViewController.相反,创建自己的UIActivity子类,然后使用以下内容实例化UIActivityViewController您的活动数组:

- (id)initWithActivityItems:(NSArray *)activityItems applicationActivities:(NSArray *)applicationActivities;
Run Code Online (Sandbox Code Playgroud)

  • @ user1679847如[docs](http://developer.apple.com/library/ios/#documentation/UIKit/Reference/UIActivityViewController_Class/Reference/Reference.html)中所述,`UIActivityViewController`有一个`excludedActivityTypes`属性,您可以设置为阻止某些活动类型出现,因此您应该能够通过在该列表中包含"UIActivityTypePostToFacebook"来排除Facebook. (10认同)
  • 如果`activities`是你的`UIActivityViewController`,那么用它作为内容视图控制器创建一个popover:`popover = [[UIPopoverController alloc] initWithContentViewController:activities];`然后像往常一样呈现它.这里的所有都是它的. (3认同)