четверг, 23 августа 2012 г.

Splash экран в PhoneGap приложении

Этот вопрос мы рассмотрим на примере Android версии программы, а потом это все можно будет скомпилировать в PhoneGap: Build и получится красивое приложение с красивом сплеш экраном, вместо черного если делать без него. Для того что бы сделать простой сплеш экран вам нужно сперва намалевать картинку с такими размерами:


  • xlarge (xhdpi): at least 960 x 720
  • large (hdpi): at least 640 x 480
  • medium (mdpi): at least 470 x 320
  • small (ldpi): at least 426 x 320



Что бы вы долго не мучались, вот вам картинка которую нужно просто подогнать под размеры в пеинте:


Дальше закидываем эту картинку в папку res/drawable-*** по размерам которые указаны выше.

И прописываем вот такое вот в нашемonCreate() перед функцией super.loadUrl();

super.setIntegerProperty("splashscreen", R.drawable.splash);


Код будет иметь вот такой вид:

public class TestActivity extends DroidGap {

        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState) {

                super.onCreate(savedInstanceState);
                super.setIntegerProperty("splashscreen", R.drawable.splash);
                super.loadUrl("file:///android_asset/www/index.html", 5000); //5000 это задержка экрана на 5 сек после загрузки фонгепа
        }
}



Запускаем проект в моем случае это Eclipse и видим как у нас загрузилось наше красивенький splash экран (: Всем спасибо за внимание, до свидания.

4 комментария:

  1. Вообще, тема не соответствует содержанию - это будет работать только на android сборке :) Более правильное решение: https://build.phonegap.com/docs/config-xml#splashes

    ОтветитьУдалить
  2. вы не в курсе как запретить поворот экрана в phonegap???

    ОтветитьУдалить
  3. Как dspdfnm splashscreen при использовании embedded webview?
    http://docs.phonegap.com/en/2.3.0/guide_cordova-webview_android.md.html#Embedding%20Cordova%20WebView%20on%20Android

    В стандартном случае Activity наследуется от DroidGap, и в ней же запускается webview. Получается один контрол.

    При использовании embedded webview, даже если наследовать Activity от DroidGap, ничего не происходит.

    ОтветитьУдалить