android - 如何在 LIBGDX android 应用程序中 getContext()

标签 android android-activity libgdx android-context

我需要获取应用程序的Context,但在我的主类中从Game 扩展,因此我无法从Activity 扩展。有谁知道怎么做吗?

谢谢!

最佳答案

LibGDX是一个跨平台的游戏引擎,因此您的应用程序可以在多个平台上执行。只有 Android(它只是受支持的平台之一)可以提供 Context 对象。

要解决此问题,您需要在 LibGDX 项目的核心模块中创建一个Interface。例如,该接口(interface)可以包含 getContext() 方法。将接口(interface)作为参数添加到主 LibGDX 类的构造函数中。在每个特定于平台的模块中,您应该实现此接口(interface),覆盖 getContext() 方法(通过在 android 中返回一个 Context 对象) module 和 null 在每个其他模块中),并将其与该模块的 Launcher 类中主 LibGDX 类的构造函数一起传递。

有关该主题的更多信息,请阅读 LibGDX Wiki:https://github.com/libgdx/libgdx/wiki/Interfacing-with-platform-specific-code

编辑: LibGDX 无法处理 Context 对象,您需要在 Android 模块中操作 Context 对象,而不是将其传递给核心模块!感谢@Nicolas 和@Luis Fernando Frontanilla 提到这一点。

关于android - 如何在 LIBGDX android 应用程序中 getContext(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60025875/

相关文章:

Android 服务到 Activity 的高频通信 : best option?

java - LibGDX RTL 字体渲染?

java - Android - 如何从 Activity 中获取 "start"或 "initialize" fragment ?

android - 如何完成 "group"的 Activity ?

java - 对在 libgdx 中实现渲染方法的不同方法的疑问

java - (LibGDX) 改变 Actor 的颜色

Android-调整图像大小以匹配屏幕高度

android - 由于多个 APK 版本,无法在 App Billing V3 中为 Android 生成公钥

java - 如何在不耗尽内存或使用非常小的图像的情况下加载多个 AnimationDrawables?

android - 部分可见的 Action 模式图标 android