我想在用户“登录”/“登录”后从我的 Android 应用程序向 libgdx 游戏传递一些凭据数据。
首先我想问你 - 使用 Intent 开始我的游戏是一个好的做法吗?
我已在manifest.xml 文件中将我的启动 Activity 声明为.LoginActivity(例如),然后在用户执行一些操作后 - Android 端使用下一个代码启动游戏:
private void initializeListeners(){
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent(getBaseContext(), AndroidLauncher.class);
startActivity(intent);
}
});
}
是否有一些如何从 Activity 开始游戏的最佳实践?
另一个相关问题是 - 如何将数据从 android acitivity 传递到 libgdx 游戏?
我在此链接中看到了一些建议:https://github.com/libgdx/libgdx/wiki/Interfacing-with-platform-specific-code .
我还没有使用 Swarm 框架(也许稍后),我想使用我自己的接口(interface)将数据传递到游戏中。
我已经声明了下一个接口(interface):
public interface DataPasser {
void passData(String userName);
}
并在游戏核心部分的 Screen 实现中实现它,如下所示:
@Override
public void passData(String userName) {
font.draw(batch, userName, 0, 450);
}
我只是用传递的数据绘制一个字符串。
主要问题是 - 我什么时候应该在我的 android 部分中调用这个方法?
我正在调用 Intent ,游戏开始时没有在 Intent 内传递数据 - 这就是我问的原因 - 开始游戏的最佳方式是什么。
我应该如何传递数据并开始游戏 - 请提出建议。
最佳答案
您没有太多代码,因此其中很多都是一般性提示。
在核心模块中,您添加一个带有所需参数的构造函数(LibGDX 游戏本身,假设您使用项目生成器)。
您添加一个构造函数,在其中接收两个字符串:用户名和密码。
您使用 Intent 将数据从一个 Activity 传递到游戏 Activity ,然后游戏 Activity 将字符串发送到游戏的构造函数。
关于java - 如何从 Activity 正确启动 libgdx 游戏并向其传递数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46524448/