java - libGDX 暂停运行几秒钟

标签 java android libgdx

我有一个应用程序,我想在其中稍作停顿。使图形元素/更改在两次自动交互之间更好地可见是很重要的。

我曾尝试使用上面的代码暂停 2 分钟,但它会在方法开始时导致暂停,而不是在方法内的两行代码之间。

try {
    Thread.sleep(2000);
} catch(InterruptedException ex) {
    Thread.currentThread().interrupt();
}

最佳答案

Libgdx 期望渲染循环定期运行(大致以屏幕刷新率)并每次都重新绘制屏幕。因此,虽然您的应用程序可能“看起来”已暂停,但实际上不应暂停。它应该忙于更新屏幕、更新动画、响应返回键等。

因此,您需要更明确地决定在此窗口期间要阻止什么。只是响应输入?添加新元素?那么你应该在你的窗口中跳过这些元素。

long endPauseTime = 0;

当您决定要暂停时:

endPauseTime = System.currentTimeMillis() + (2 * 1000); // 2 seconds in the future

然后在你的渲染回调中:

if (endPauseTime < System.currentTimeMillis()) {
   // non-paused mode, so check inputs or whatever
} else {
   // paused mode, so skip some things ..
}

关于java - libGDX 暂停运行几秒钟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30292113/

相关文章:

java - 为什么我能够直接访问枚举常量作为另一个类中 switch 语句的 case 标签

java - 多线程写入和多线程读取的 ConcurrentLinkedQueue 的并发问题。 #快速目录扫描

java - Spring - 使用 CriteriaQuery (规范)的 OrderBy 关系属性会忽略没有关系的行

android - 搜索 View CSV 数组列表

Android - 即使字符串已初始化,string.equals(null) 也会返回空指针

java - NoClassDefFound错误: com/badlogic/gdx/LifecycleListener

java - 如何解析这个输入?

java - 如何在 GridView 中交换图像 (Android)

java - 如何使用 libGDX 在纵向和横向模式之间切换?

android - 有什么办法可以忽略 libgdx 图像限制? (图像必须是二的幂)