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 - What's new in Cocoa Touch で言及されています。青みがかった部分は、無効にできるデフォルトのレイオーバーです

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