使用Xcode 7我想用UIWebView創建一個小應用程序。 這個應用程序將不得不從所有設備運行它。 我正在資產中使用「新iOS啓動圖像」。 但是,當「啓動」終止時,在加載WebView之前有一個等待時間(根據連接速度而變化)。 在這個時候,我想「啓動屏幕」,繼續使用圖像類型的設備持續存在。LaunchImage persistent
你能幫我嗎?
使用Xcode 7我想用UIWebView創建一個小應用程序。 這個應用程序將不得不從所有設備運行它。 我正在資產中使用「新iOS啓動圖像」。 但是,當「啓動」終止時,在加載WebView之前有一個等待時間(根據連接速度而變化)。 在這個時候,我想「啓動屏幕」,繼續使用圖像類型的設備持續存在。LaunchImage persistent
你能幫我嗎?
我使用此代碼解決了這個問題:
extension UIImage {
convenience init?(fullscreenNamed name: String) {
switch UIScreen.mainScreen().bounds.size.height {
case 480: //iPhone 4/4s
self.init(named: "\(name)[email protected]")
case 568: //iPhone 5/5s
self.init(named: "\(name)[email protected]")
case 667: //iPhone 6/6s
self.init(named: "\(name)[email protected]")
case 736: //iPhone 6+/6s+
self.init(named: "\(name)[email protected]")
default:
self.init(named: name)
}
}
}
我參加「LaunchImage」在使用該設備屏幕的右側圖像。
你不能像蘋果推薦的那樣增加啓動屏幕的時間,但是你可以做一些讓用戶感覺就像啓動屏幕一樣的東西。 你可以用這種方式實現它:
我假設你的啓動畫面後的第一個屏幕加載是你的WebView屏幕。在界面構建器的WebView中添加UIImageView
,並在ImageView上設置啓動屏幕圖像。現在爲這個imageView製作IBOutlet,並在webview暗示它將其加載到其委託方法中時將其隱藏屬性設置爲yes。不要忘記在界面生成器中設置UIWebView的委託。
class WebViewController: UIViewController, UIWebViewDelegate {
@IBOutlet var UIImageView: imgThumbSplash!
override func viewDidLoad() {
super.viewDidLoad()
imgThumbSplash.hidden = false
}
func webViewDidFinishLoad(webView: UIWebView){
imgThumbSplash.hidden = true
}
func webView(webView: UIWebView, didFailLoadWithError error: NSError?){
imgThumbSplash.hidden = true
}
}
如何在ImageView中設置初始屏幕圖像? – alessiovolpe
我必須連接到「IBOutlet UIImageView」? – alessiovolpe
這裏github.com/Volpesio/Launch.git(Launch.zip)是我的實現想法,以確保LaunchImage在啓動屏幕後保持可見。但在某些iPhone上,圖像失真!因爲?我哪裏做錯了? – alessiovolpe
cf. http://stackoverflow.com/questions/27519195/activity-indicator-on-launch-screen-in-ios-using-xcode6 –
我很抱歉,但我不知道objective-c。我是Swift的初學者 – alessiovolpe