【问题标题】:UIActivityViewController strange behaviour in iOS 7iOS 7 中的 UIActivityViewController 奇怪行为
【发布时间】:2014-02-16 09:46:47
【问题描述】:

我使用了带有共享选项的 UIActivityViewController。

NSURL *url =[NSURL URLWithString:@"google.com"];

UIImage *img = [UIImage imageNamed:@"myImage"];


NSMutableArray *ar2 = [NSMutableArray arrayWithObjects:UIActivityTypePostToWeibo, UIActivityTypeSaveToCameraRoll, UIActivityTypeMessage, UIActivityTypePrint, UIActivityTypeAssignToContact, nil];

NSArray *itemsToShare =  @[textToShare,url];

UIActivityViewController *activityVC = [[UIActivityViewController alloc] initWithActivityItems:itemsToShare applicationActivities:nil];
[activityVC setValue:@"Sample - Share" forKey:@"subject"];
activityVC.excludedActivityTypes = ar2;
[self presentViewController:activityVC animated:YES completion:NULL];

但它以一些白色视图和 AirDrop 名称显示为“null”。任何人都可以建议我一个解决方案...

【问题讨论】:

  • iPhone 看起来像 4 或 4s;但是 AirDrop 仅支持 iPhone 5 或 iPhone 5s。
  • @MetinSay 这是 iPhone 5。我已经从全尺寸裁剪了图像,所以它看起来很小。
  • 您的ActivityViewController 似乎还有一些奇怪的地方 - 为什么三个主要部分后面都有白带?那些也应该是半透明的。您是否尝试以任何方式更改 ViewController?
  • @JamesFrost 不,我没有更改 ViewController 中的任何内容。
  • 我从来没有这样设置过主题。那是唯一似乎关闭的线路。这是在运行 iOS 7 的 iPhone 5 设备上吗? 7.1?

标签: ios iphone objective-c ios7 uiactivityviewcontroller


【解决方案1】:

我已经测试了你的代码,它对我来说运行良好。我正在使用 iPod5 touch 和 iOS 7.1.2 我有一点建议。尝试延迟调用您的代码。喜欢:

[self performSelector:@selector(shareActivityView) withObject:nil afterDelay:0.5];

您的方法 shareActivityView 似乎:

-(void)shareActivityView
{
    NSURL *url =[NSURL URLWithString:@"google.com"];

    UIImage *img = [UIImage imageNamed:@"myImage"];


    NSMutableArray *ar2 = [NSMutableArray arrayWithObjects:UIActivityTypePostToWeibo,       UIActivityTypeSaveToCameraRoll, UIActivityTypeMessage, UIActivityTypePrint,  UIActivityTypeAssignToContact, nil];

    NSArray *itemsToShare =  @[textToShare,url];

    UIActivityViewController *activityVC = [[UIActivityViewController alloc] initWithActivityItems:itemsToShare applicationActivities:nil];
    [activityVC setValue:@"Sample - Share" forKey:@"subject"];
    activityVC.excludedActivityTypes = ar2;
    [self presentViewController:activityVC animated:YES completion:NULL];
}

这很奇怪,但有时它会起作用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-25
    • 2014-08-06
    • 1970-01-01
    • 2013-04-04
    • 1970-01-01
    • 2017-05-23
    相关资源
    最近更新 更多