objective-c - 微博等iOS 6 ActivityViewController定制

标签 objective-c ios6 uiactivityviewcontroller weibo sinaweibo

我想实现 iOS6 的新 ActivityViewController,但是我想要 摆脱未使用的事件,如消息、复制、在微博上分享等。

是否可以对其进行自定义或子类化以删除这些图标?

感谢您的帮助!

最佳答案

好的,我自己找到了自定义 UIActivityViewController 的解决方案:

如果你想摆脱像微博、 Facebook 等分享选项……很简单, 只需设置 ExcludedActivityTypes 属性:

UIActivityViewController *actionCtrl = [[UIActivityViewController alloc]initWithActivityItems:act applicationActivities:nil];

[actionCtrl setExcludedActivityTypes:@[UIActivityTypeAssignToContact, UIActivityTypeCopyToPasteboard, UIActivityTypeMail, UIActivityTypePostToWeibo]];
[self presentViewController:actionCtrl animated:YES completion:nil];

如果你想添加另一个事件(按钮或图像等),你需要将 UIActivity 子类化并覆盖一些方法,如 activityType 和 activityImage。

- (UIImage *)activityImage {
    return [UIImage imageNamed:@"icon"];
}

你这对你们也有帮助!

关于objective-c - 微博等iOS 6 ActivityViewController定制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13008277/

相关文章:

objective-c - 如何访问一个已经存在的 View Controller

iphone - 选择 TableRow 和 SelectionColor 应该是可见的,然后自动消失

ios - UIColor patternImage 与 UIActivityViewController barTintColor 冲突

ios - 点击调整 View 大小

ios - 我如何使用 objective-c 创建文件(jpeg、pdf 和 tiff)的 sha256 哈希

ios - 如何在旧版本中创建Objective-C项目

iphone - 如何在 iPhone 中获取应用程序安装时间

iOS 6 本地存储文件出现两次

ios - 使用 UIActivityViewController 共享电子表格、视频等

uiactivityviewcontroller - 在 SwiftUI 中显示 'UIActivityViewController'