0
我有包含主类对象的依赖(与听众,在libgdx)
registerscreen = new registerScreen(this);
emailRegisterscreen = new emailRegisterScreen(this);
的registerScreen
包含emailButton,向监听器,在构造函数中提出:
emailButton.addListener(new ClickListener() {
@Override
public void touchUp(InputEvent event, float x, float y, int pointer, int button) {
super.touchUp(event, x, y, pointer, button);
Gdx.app.log("registerscreen", "email clicked");
gameHolder.setScreen(gameHolder.emailRegisterscreen);
}
});
gameHolder
是主要的类。
现在,以上示例仅适用于在emailScreen
之前初始化emailRegisterscreen
(上面的代码段不起作用)。我想知道是否有可能使它工作,并仍然首先定义寄存器屏幕?
我猜Java使用当前值gameHolder.emailRegisterscreen
而不是对它的引用或其他东西。
我不确定你到底在问什么,它是否返回空指针异常?它什么都不做?在调用touchUp方法时,匿名类将使用gameHolder的当前值。 – Jyro117 2013-03-14 21:09:53
*“我在猜测Java使用'gameHolder.emailRegisterscreen'的当前值而不是引用它或其他东西。”*否,情况并非如此,Java在执行时使用该字段的值。所以注册的顺序(在你的示例代码片段中)并不重要。我猜你的代码还有其他问题。你可能想详细说明什么是不工作的,你是否有错误,是否没有发生? – Veger 2013-03-15 09:05:03