0

似乎没有 Apple 允许的方法来更改 uiactivityviewcontroller 的颜色。我在我的 iPad 应用程序中创建它,如下所示:

UIActivityViewController *activity = [[UIActivityViewController alloc] initWithActivityItems:@[@"test"] applicationActivities:nil];
shareOptions = [[UIPopoverController alloc] initWithContentViewController:activity];  
[shareOptions presentPopoverFromBarButtonItem:actionBarButton permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];

这目前呈现带有蓝色背景颜色的弹出框。我已经看到使用了黑色背景颜色,所以我知道这是可能的。另一位开发人员向我提到他认为在 iPhone 上至少它似乎是由状态栏颜色决定的(因为在 info.plist 中将状态栏颜色设置为黑色不透明会使活动视图变黑)。这似乎对 iPad 版本没有影响。有没有人有任何想法/建议?

谢谢!

更新:设置 activity.view.backgroundColor 会产生一个奇怪的结果,其中大部分视图是设置的颜色,但边缘仍然是原始蓝色

UIActivityViewController 奇怪的背景

4

1 回答 1

2

这在 WWDC 2012 视频中提到:第 200 次会议 - Cocoa Touch 中的新功能。蓝色部分是您可以停用的默认停留

UIPopoverBackgroundView +(BOOL)wantsDefaultContentAppearance
于 2013-05-17T14:52:55.950 回答