2016-01-21 238 views
1

我正在使用此SWIFT代碼當從圖中示出用深色(例如黑色)背景的警報顯示從UIViewControllerUIAlertViewController閃爍/閃爍簡要

import UIKit 

class TestViewController: UIViewController { 
    @IBAction func onTestClick(sender: UIButton) { 
     let alertController = UIAlertController(title: "title", message: "message", preferredStyle: .Alert) 
     alertController.addAction(UIAlertAction(title: "OK", style: .Default, handler: nil)) 

     self.presentViewController(alertController, animated: true, completion: nil) 
    } 
} 

警報對話框中,它簡要地「閃爍「(出現白色,然後立即變爲比白色稍暗的顏色)。

這似乎沒有發生在其他應用程序和系統操作系統上。

這裏有什麼問題?

+0

是否有任何其他代碼與'UIAlertController'演示一起執行?任何視圖操作等?如果將背景顏色更改爲白色,您是否可以觀察到眨眼?不知道顏色如何相關,但我們試着去調查一下。我建議在VC上斬斷一些代碼,看看這種行爲是否仍然存在。 –

+0

@RaphaelOliveira沒有其他代碼正在執行,如果白色背景沒有閃爍。如果不是動畫也不會發生。 – Code

+0

嗯,很難猜測。你能粘貼你的視圖控制器代碼嗎? –

回答

1

我能夠重現你在說什麼,我不認爲你實際上做錯了什麼。如果您在模擬器(cmd + t)上轉動慢動畫,您會看到警報控制器位於屏幕中央,並且處於淡入淡出動畫中。當動畫正在進行時,警報控制器有一個白色背景(這是Apple的代碼,這很好),當動畫結束時,警報控制器會有一個透明背景,根據背後的視圖顏色而變化。當視圖爲白色時,您不會注意到任何事物,因爲白色+白色=白色! :)

我希望有所幫助。

+0

製作gif並顯示問題的簡單方法但其他應用程序似乎不存在此問題? – Code

+0

你可以給我一個例子,我可以檢查嗎? –

+0

Facebook應用程序 - 輸入無效的登錄名。儘管可能只是Facebook。 Instagram也有同樣的問題。 – Code