web-dev-qa-db-ja.com

ポップオーバーの矢印がビューコントローラの背景と同じ色ではない

タイトルはそれをすべて本当に言います。ポップオーバーとしてボタンに接続されたViewControllerがあります。ビューコントローラの背景色は灰色ですが、ボタンを指す矢印の色は白です。どんな助けでも大歓迎です。

25
user2816600

これが私がそれを回避する方法です:

popover = [[UIPopoverController alloc] initWithContentViewController:contentViewController];
popover.backgroundColor = contentViewController.view.backgroundColor;

これは、ポップオーバーをコンテンツの背景の色に一致させます。

41
mahboudz

iOS 9.0以降の場合(cpvcはViewControllerです)

cpvc.popoverPresentationController.backgroundColor = cpvc.view.backgroundColor;
19
NSGodMode

IOS7 SDKを使用していますか?

多分あなたは試すことができます:

[popover setBackgroundColor:[UIColor whiteColor]];

コンテンツビューコントローラの背景色を白に設定していることを確認してください。

5
Xi Zhang

Swift 4.2

navController?.popoverPresentationController?.backgroundColor = .black
3
AleyRobotics

IOS7でも同じ問題が発生しました(醜い白い「矢印」)。これは私にとってそれを修正するようです。 UIPopoverControllerは、iOS7より前のsetBackgroundColorをサポートしていないため、チェックします。

if ([popoverController respondsToSelector:@selector(setBackgroundColor:)])
{
   [popoverController setBackgroundColor:[UIColor clearColor]];
}
1
user3574848