我想從UINavigationController呈現一個不透明的UIViewController。雖然視圖正在動畫,但它是如何我想要的不透明。然而,當它完成動畫時,背景變成灰色。當以前的視圖是UIViewController時,我有這個工作。當我使用UINavigationController作爲前面的視圖時,我開始出現這個問題。在UINavigationController頂部的iOS不透明的UIViewController
代碼以切換到視圖:
UIStoryboard *storyBoard = [UIStoryboard storyboardWithName:STORYBOARD_IPHONE bundle:nil];
UIViewController *viewController = [storyBoard instantiateViewControllerWithIdentifier:viewName];
[self presentViewController:viewController animated:YES completion:nil];
代碼,使提出的觀點不透明:
self.view.backgroundColor = [[UIColor whiteColor] colorWithAlphaComponent:0.7];
我覺得這可能有一些做的事實類,它是呈現視圖不是UINavigationController,而是UINavigationController中的UIViewController。所以我嘗試使用self.navigationController presentViewController,但我得到了相同的結果。
我該如何解決這個問題,使背景保持不透明?
以前的UINavigationController嵌入的UIViewController:
什麼樣子動畫期間:
什麼它看起來像動畫後:
你在哪裏寫你的背景顏色代碼。它在viewdidload?如果是,則嘗試在viewwillappear中設置背景顏色。 – KDeogharkar
是的,我正在設置viewDidLoad。我試着在viewWillAppear和viewDidAppear中設置它。我也有同樣的問題。 –
你正在將你的視圖設置爲alpha 0.7,並想知道爲什麼你能看透它?你的觀點背後有什麼 - 可能是黑色背景?那和70%的白色可能會導致你的灰色。 –