2012-09-05 2 views
2

Phonegap 앱을 만들고 있습니다. 내 응용 프로그램에서 "안드로이드"와 "ios"에 대해 다른 CSS를 사용하고 있기 때문에 안드로이드 인 경우에만 CSS를로드해야합니다. 다음 코드는 완벽하게 작동하지만 처음에는 CSS가 없으면 페이지가로드 된 다음 phonegap이로드 된 후 CSS가로드되면서 페이지가 표시 될 때마다 춤추는 페이지가 표시됩니다 (즉, CSS가 페이지를 표시 할 때마다로드됩니다). CSS가 표시되기 전에 표시되지만, 안드로이드 플랫폼 인 경우에만 표시됩니다.페이지를 표시하기 전에 phonegap에서 CSS를로드하는 방법은 무엇입니까?

 <script type="text/javascript" > 
    var string; 
    // Wait for PhoneGap to load 
    document.addEventListener("deviceready", onDeviceReady, false); 

    // PhoneGap is loaded and it is now safe to make calls PhoneGap methods 
    function onDeviceReady() 
    { 
     check_img(); 
    } 

    function check_img() 
    { 
    string = device.platform; 
    if(string=="Android") 
    { 
     var head = document.getElementsByTagName('head')[0]; 
     var link = document.createElement('link'); 
     //link.id = cssId; 
     link.rel = 'stylesheet'; 
     link.type = 'text/css'; 
     link.href = 'css/style.css'; 
     //link.media = 'all'; 
     head.appendChild(link); 
    } 
    } 
    </script> 
+0

deviceReady() 대신 document.ready()에서 check_img() 함수를 실행 해 볼 수 있습니까? document.ready()는 일반적으로 이전에 발생합니다. – dan

+0

@dan 문제는 백그라운드에서 내 CSS를로드 할 시간을 얻을 수있는 스플래시 화면 시간을 연장했습니다. 그러나 그것은 1.7g 또는 그 이후의 phonegap 만 작동합니다. – karnhick

+0

반가워요. document.ready()에서 곧 check_img()를 실행합니다. phonegap 기능을 사용하지 않는 한, deviceready()에서 호출하면 불필요한 시간이 오래 걸릴 것입니다. – dan

답변

1

여기에서 답변을 찾았습니다. 당신이 설정 당신은 당신의 mainactivity.java 파일

super.setIntegerProperty("splashscreen", R.drawable.splash); 
    super.loadUrl("file:///android_asset/www/index.html", 10000); 

에서 다음과 같이 시작 화면이 십초 후 스플래쉬 화면을 표시 할 당신의 index.html 페이지가로드 될 http://simonmacdonald.blogspot.in/2012/04/phonegap-android-splashscreen-just-got.html

. 나는 그때 말했다. 그래, 스플래시 화면이 차단 호출임을 보여주는 것이 맞습니다. 스플래시 화면이 표시되는 동안 .html/.js/.css가 백그라운드에서로드되지 않습니다. 음, 응용 프로그램이 다른 스레드의 스플래시 화면 아래로로드되는 동안 스플래시 화면이 한 스레드에 표시되도록 모두 변경됩니다. 가장 좋은 점은 코드를 변경할 필요가 없다는 것입니다. 평상시처럼 스플래시 화면을 계속 호출하십시오.

+0

링크 썩음 현상이 발생합니다. 여기 중요한 비트를 요약하거나 인용하십시오. 링크 전용 답변은 추가 통지없이 삭제 될 수 있습니다. 고맙습니다. –

관련 문제