在我的android、桌面和html libgdx项目中,我很难实现Universal Tween引擎(请注意,这是使用gradle的libgdx版本1.3.1的一个问题)。我按照github wiki上的说明,使用了下面链接中显示的fileTree方法。https://github.com/libgdx/libgdx/wiki/Universal-Tween-Engine
我设法将核心和ANDROID项目的构建路径设置为包括两个tween engine JAR。这些类很容易导入,但在运行桌面项目时,我会遇到以下错误:
线程“LWJGL应用程序”java中出现异常。lang.RuntimeException:在AurelianRibon找不到目标的TweenAccessor。特温尼。吐温。在Aurelianribon建立(Tween.java:787)。特温尼。吐温。在Aurelianribon建立(Tween.java:79)。特温尼。伯瑟温。从Aurelianribon开始(BaseTween.java:85)。特温尼。特温经理。在Aurelianribon添加(TweenManager.java:61)。特温尼。伯瑟温。从com开始(BaseTween.java:98)。无穷大。杀死云彩。屏幕。泼洒在com上展示(Splash.java:58)。糟糕的逻辑。gdx。游戏在com上设置屏幕(Game.java:61)。无穷大。杀死云彩。杀死云彩。在com上创建(KillTheClouds.java:14)。糟糕的逻辑。gdx。后端。lwjgl。LWJglaplication。com上的mainLoop(LwjglApplication.java:136)。糟糕的逻辑。gdx。后端。lwjgl。LwjglApplication 1美元。运行(LwjglApplication.java:114)
这是我的密码
Splash.java
package com.infinitybit.killtheclouds.Screens;
import aurelienribon.tweenengine.Tween;
import aurelienribon.tweenengine.TweenManager;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.Screen;
import com.badlogic.gdx.graphics.GL20;
import com.badlogic.gdx.graphics.Texture;
import com.badlogic.gdx.graphics.g2d.Sprite;
import com.badlogic.gdx.graphics.g2d.SpriteBatch;
import com.infinitybit.killtheclouds.KillTheClouds;
import com.infinitybit.killtheclouds.TweenStuff.SplashAccessor;
public class Splash implements Screen {
public static int SCREEN_WIDTH = Gdx.graphics.getWidth();
public static int SCREEN_HEIGHT = Gdx.graphics.getHeight();
private KillTheClouds game;
private SpriteBatch splashpaper;
private Sprite splashimage;
private TweenManager tweenManager;
public Splash(KillTheClouds game) {
this.game = game;
}
@Override
public void show() {
// TweenSTUFF
tweenManager = new TweenManager();
Tween.registerAccessor(Sprite.class, new SplashAccessor());
splashpaper = new SpriteBatch();
Texture splashTexture = new Texture("images/splash/logo.png");
splashimage = new Sprite(splashTexture);
// image size
splashimage.setSize(SCREEN_WIDTH / 1.5f, SCREEN_HEIGHT / 2);
// center image
splashimage.setPosition(SCREEN_WIDTH / 2 - splashimage.getWidth() / 2,
SCREEN_HEIGHT / 2 - splashimage.getHeight() / 2);
Tween.set(splashTexture, SplashAccessor.ALPHA).target(0)
.start(tweenManager);
Tween.to(splashTexture, SplashAccessor.ALPHA, 3).target(1)
.start(tweenManager);
Tween.to(splashTexture, SplashAccessor.ALPHA, 2).target(0).delay(2)
.start(tweenManager);
}
@Override
public void render(float delta) {
Gdx.gl.glClearColor(0, 0, 0, 1);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
// update tween
tweenManager.update(delta);
splashpaper.begin();
splashimage.draw(splashpaper);
splashpaper.end();
}
@Override
public void resize(int width, int height) {
}
@Override
public void hide() {
}
@Override
public void pause() {
}
@Override
public void resume() {
}
@Override
public void dispose() {
}
}
喷溅存取器。JAVA
package com.infinitybit.killtheclouds.TweenStuff;
import aurelienribon.tweenengine.TweenAccessor;
import com.badlogic.gdx.graphics.g2d.Sprite;
public class SplashAccessor implements TweenAccessor<Sprite> {
public static final int ALPHA = 0;
@Override
public int getValues(Sprite target, int tweenType, float[] returnValues) {
switch (tweenType) {
case ALPHA:
returnValues[0] = target.getColor().a;
return 1;
default:
assert false;
return -1;
}
}
@Override
public void setValues(Sprite target, int tweenType, float[] newValues) {
float defRed = target.getColor().r;
float defGreen = target.getColor().g;
float defBlue = target.getColor().b;
switch(tweenType){
case ALPHA:
target.setColor(defRed, defGreen, defBlue, newValues[0]);
break;
default:
assert false;
}
}
}
你的飞溅纹理不是雪碧的类型,它是纹理!!!
这就是你的问题。从splashTexture创建splashSprite,并将其命名为:
Tween.to(splashSprite, SplashAccessor.ALPHA, 3).target(1)
.start(tweenManager);
希望有帮助!
从终端执行jar时,我得到以下信息: 我搜索了他的错误,发现了一些相同的执行输出错误,但没有解决我的情况。 下面详细介绍了文件的位置、清单内容、所采取的终端步骤以及所涉及的两个类文件的代码内容。 文件位置 > SWT库 舱单 班级 普通人。jar(参见下面的创建): Manifest.txt内容: 终端动作 > 目录更改 . jar创建 舱单检查 普通人。jar执行 密码 用户nterface.c
我很难理解这个代码有什么问题。Dr.Java一切都很好,但是在另一个名为edhesive的代码运行平台上(我就是在这个平台上被分配这个项目的),它给我一个错误。我已经检查了所有我认为出错的地方,但仍然不知道哪里出了问题。 在edhesive上运行后,我得到了这个错误 有人能帮帮我吗?
我已经编写了一段代码,其中我制作了一个接口和一个实现该接口的类。现在,当我运行代码时,我给了我自己2个选项,即1输入字符串,2退出。现在,当我运行代码时,如果我选择1,它会让我放入字符串,但在此之后,当我按0时,它会给我错误:Exception in thread“main”java.lang。有人能帮我找出我在这里遗漏了什么吗?下面是代码: StackTrace: 线程“main”java.la
我正在从事JavaFX项目,我创建了两个FXML文件,我想将另一个窗格加载到主窗格,即边框窗格。我想将另一个窗格加载到边框窗格中心区域! 这是我的项目的切入点,这是一个Java文件 之后,将显示显示“我的边框”窗格的主FXML文件 我设置了一个按钮,将特定窗格显示到边框窗格中心区域。 这是我的控制器类的边界窗格包含类 这是我想显示在边界窗格中心区域的FXML文件。 但是当我点击按钮,给我一堆错误!
我得到java.lang.NoSuch方法例外请帮助我在这... 这就是我得到的错误- 错误:java.lang.运行时异常:java.lang.NoSuchmethod异常:com.nielsen.GRFE.processor.mapreduce.占位符$PlaceholderMapper.()在org.apache.hadoop.util.Reflse Utils.new实例(Reflse U
我在我的Android应用程序中面临奇怪的问题。它总是给我错误的名字 JAVAlang.RuntimeException:无法实例化应用程序io。日本动画。应用程序。应用程序:java。lang.ClassNotFoundException:在路径:DexPathList[[zip文件”//data/app/io.hitanime.app-957U27HR57arXVvYGSCFSQ==/base