libgdx и TWL: приложение Android закрывается в любом меню TWL, отлично работает на рабочем столе - PullRequest
4 голосов
/ 04 марта 2012

Я реализую меню с использованием TWL (http://twl.l33tlabs.org/)) в приложении, написанном с использованием Libgdx. Приложение работает нормально, если я не запускаю никаких меню, но как только я перехожу на экран меню, оно сразу же принудительно закрывается. Меню Экраны отлично работают на настольной версии.

В какой путь сборки должен быть включен TWL-android.jar (сейчас он ведет себя одинаково в основном, android и обоих)? И как программа узнает об использовании библиотек из этого .jar вместо gdx-twl.jar по умолчанию? Придется ли мне вручную что-то реализовывать в коде, чтобы использовать один или другой в зависимости от платформы?

Кажется, что нет никакой документации или примера кода тех, кто использует TWL на Android, только упоминание, что это может быть сделано.

Запуск отладчика, подключенного к телефону, выдает следующую ошибку logcat:

Could not find class 'com.badlogic.gdt.twl.Layout' referenced from method com.Nanners.OptionsScreen.<init>

Ответы [ 2 ]

0 голосов
/ 10 января 2014

При добавлении TWL-android.jar.Так как это специфично для Android, вы не можете использовать его в основном проекте, поэтому импортируемые вами классы из gdx-twl.Чтобы упростить объяснение, я разделю его на различные сценарии.

  1. Вы добавляете TWL-андроид в свой путь сборки Android.Но вы используете Gdx-twl в вашем основном проекте.Который не добавлен.Таким образом, получая:

    Could not find class 'com.badlogic.gdx.twl.Layout'
    
  2. Вы добавляете TWL-android И Gdx-twl в свой путь сборки.Таким образом получаются дублирующиеся классы и:

    Conversion to Dalvik format failed with error 1
    

Решение

Если вы используете классы TWL-android, вы можете делать это только внутри Androidпроект:

Если вы используете Gdx-twl:

  • Не делайте этого.

На самом деле лучшее решение - это избавиться от всех вещей twl и использовать взамен Scene2d.Ui .Его кроссплатформенность и намного проще в использовании.

0 голосов
/ 04 марта 2012

Я думаю, что TWL-android.jar должен быть добавлен и в путь сборки проекта Android. Местоположение .jar не имеет значения.

...