gpt4 book ai didi

ios - 如何自定义 UIActivityViewController 以在发布到 facebook 和 twitter 时显示 URL 链接?

转载 作者:IT王子 更新时间:2023-10-29 07:52:36 24 4
gpt4 key购买 nike

所以我正在 iOS 6 中试用新的 UIActivityViewController,启动和运行它真的很容易,但我不知道如何控制它。所以我想发布一篇文章的链接,我还想为链接附上一张图片。我不希望将该图片作为 URL 缩略图上传到某些 Facebook 相册。

这在 facebook SDK 中很容易实现,因为它们可以完全控制它,但是有没有办法使用 UIActivityViewController 来实现?这是我得到的:

    NSArray *activityItems = @[[NSURL URLWithString:[article link]], [UIImage imageNamed:@"myStockImage"]];
UIActivityViewController *viewCont = [[UIActivityViewController alloc] initWithActivityItems:activityItems applicationActivities:nil];
[self presentViewController:viewCont animated:YES completion:nil];

这有效,但它会将图像上传到“iOS 相册”。如果我不在数组中添加图像,那么 facebook 工作表看起来是空白的,附件显示一个灰色的 safari Logo (就像缺少缩略图一样!)在 safari 中,当您尝试 Facebook 链接时,它使用页面的屏幕截图作为缩略图,我想做类似的事情

更新:

这是我的应用程序的样子(使用 UIActivityViewController 或 SLCompose 方式)。看它如何将图片上传到相册 iOS Photos

Incorrect placement of photo

这是我想要的样子(另见 Safari):

enter image description here

最佳答案

我对此进行了搜索,得出的结论是使用 UIActivityViewController 根本无法实现您的预​​期。每次你尝试分享一张照片时,它只会让你把照片放在你的一个相册中,默认情况下是“iOS”相册。

在我的例子中,只要从我需要共享的链接中检索到图像,我就不需要发布照片(就像当您在 Facebook 时间轴上发布链接时,它会自动从该链接抓取图片, 图片成为链接)。为了做到这一点,我发现如果我只发布一个 URL,它是行不通的。您必须发布一些初始文本,然后是 URL,您可以通过将对象按此顺序放在 activityItems 数组中来实现。

这是我的工作代码:

NSArray * activityItems = @[[NSString stringWithFormat:@"Some initial text."], [NSURL URLWithString:@"http://www.google.com"]];
NSArray * applicationActivities = nil;
NSArray * excludeActivities = @[UIActivityTypeAssignToContact, UIActivityTypeCopyToPasteboard, UIActivityTypePostToWeibo, UIActivityTypePrint, UIActivityTypeMessage];

UIActivityViewController * activityController = [[UIActivityViewController alloc] initWithActivityItems:activityItems applicationActivities:applicationActivities];
activityController.excludedActivityTypes = excludeActivities;

[self presentViewController:activityController animated:YES completion:nil];

我还注意到,如果您沿着这些对象发布照片,它不会从链接中检索任何图像。

希望对您有所帮助。

关于ios - 如何自定义 UIActivityViewController 以在发布到 facebook 和 twitter 时显示 URL 链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12657817/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com