2013-06-24 41 views
3

我試圖消除裝載我的iOS的PhoneGap應用程序中的本地頁面之間的白色閃光的白色。 我嘗試了一切,但我仍然可以看到頁面加載之間的白色。消除頁面加載的PhoneGap的iOS之間

我試圖讓我的html背景黑色,使用數據轉變爲無,也使web視圖的backgroundColor清楚。

我已經把::

NSLog(@"BEGIN EDIT - set webView to transparent"); 
[self.webView setBackgroundColor:[UIColor clearColor]]; 
[self.webView setOpaque: NO]; 
NSLog(@"END EDIT - set webView to transparent"); 

在CDVInAppBrowser.m,在CDVViewController.m並在AppDelegate.m,但似乎沒有任何工作!也許我把代碼放在錯誤的位置。

請有人只是幫助我擺脫頁面加載之間的白色!

回答

0

PhoneGap加載速度可能會很慢。您可能需要使用啓動畫面API來顯示和隱藏啓動畫面? http://docs.phonegap.com/en/2.8.0/cordova_splashscreen_splashscreen.md.html#Splashscreen

在上述網頁中,也注重到iOS夸克部分。或者,您是否使用jQuery Mobile或AngularJS嘗試單頁應用程序?

+0

感謝您的回答,我使用的是splashscreen,它不是解決方案,因爲白色閃存是BETWEEN頁面加載。 此外,由於我的應用程序的規模,無法制作單個頁面應用程序。 必須有一種方法來消除頁面加載之間的白色!我不介意它是黑色的,而不需要很長時間。 – originalp

0

我在使用Phonegap製作移動應用程序時遇到了同樣的問題。 我不知道怎麼辦避免這些閃爍,但是當你已經建立了一個簡單的應用程序,只有少數的屏幕,你可以實現所有的HTML文檔到一個文件中,如:

<html> 
    <body> 
     <div class="page" id="page-1"> 
       Content of page one 
     </div> 
     <div class="page" id="page-2" style="display:none;"> 
       Content of page two 
     </div> 
     <div class="page" id="page-3" style="display:none;"> 
       Content of page three 
     </div> 
    </body> 
</html> 

現在你可以通過使用戶可見/不可見在每個容器的內容之間進行切換。

這一解決方案背後的想法是,所有的應用內容的將被裝載一次(開頭)和使用jQuery,你會內容之間沒有這些白色閃爍時,網頁瀏覽器必須呈現新的交換機用戶已被重定向到的頁面。

只有當您的應用程序不包含太多內容時,這是一個很好的解決方案。

0

就像我說的,使得應用程序的單個文件在這種情況下是不可能的,因爲它的複雜,我不介意頁面加載的白色閃爍是黑色,因爲它們不長的時間。這裏的解決方案,我一直在使用PhoneGap的2.8適用於iOS發現:

在CDVViewController.m

- (void)webViewDidFinishLoad:(UIWebView*)theWebView 
{ 
    // Black base color for background matches the native apps 
    theWebView.opaque = NO; 
    theWebView.backgroundColor = [UIColor blackColor]; 
    //the rest of the code… 

希望這是對別人有用。