对不起我的英语不好。 所以我在玩游戏,但是我有问题。 (Libgdx无关紧要)SolarGame是一个主要类,它是一个输入处理程序。 TesterClass有一个render方法。 闪电正在生成一些数据。

public  class SolarGame implements  ApplicationListener, InputProcessor {
TesterClass testerClass;
bool inputbool = false; //That bool is change, when event is happen

public bool getBool(){
   return inputbool
}

public void create () {
    testerClass = new TesterClass();
}
//some other code here

public class TesterClass {

Lightning lightning;

public void _init_() {
    lightning = new Lightning();
}
//Some code here

public class Lightning {

    public Lightning() {
        bool input = SolarGame.this.getBool();
//This line cause an error.

如果将SolarGame更改为静态,则会出现其他错误。 但是我需要在Lightning类中输入布尔。 事件发生时,我需要停止Lightning数据生成方法。

再次说我的英语。

#1楼 票数:1

因此,如果我理解正确,那么您需要在Lightning类中有一个SolarGame实例吗? 因为很难理解实际问题是什么,所以代码也无济于事。

在Lightning中获取SolarGame实例的操作非常简单。 您只需在创建Lighting时将其传递:

public class Lightning{ 

SolarGame game;

public Lightning(SolarGame game){
      this.game = game;
}
}

现在,您可以毫无问题地访问inputbool,而无需将任何类更改为静态:

bool inputbool = game.getBool();

由于您是在TesterClass中创建Lightning类的, 因此您需要以与上述相同的方式将SolarGame实例传递TesterClass

希望我能解决您的问题

  ask by baleys15 translate from so

未解决问题?本站智能推荐:

1回复

单身解决方案

在这篇博客中: 清单10中的代码不使用同步,并确保在调用静态getInstance()方法之前不会创建Singleton对象。 以上引用不是假的吗? 由于静态对象在类的早期初始化,如何在调用静态getInstance()方法之前不创建对象?
1回复

场景2Dfps下降需要调整地图集的大小,也许有更好的解决方案?

我正处于部署游戏的最后阶段。 一切正常,没有滞后,我在480 x 800分辨率的所有设备(例如三星或品牌类似的设备)上都具有恒定的60 FPS。 但是,在尺寸为240 x 320的设备上或在操作系统较差的中文手机上,带有我动态的Scene2D元素(有很多堆栈,表格,actor等)的屏幕会导
4回复

通过实例引用访问静态成员的最佳解决方案

我几乎在所有班级都有这种方法。 在辅助类中访问此静态方法 我得到了“静态成员被实例引用访问”的lint警告。 我不知道怎么不在这里使用“这个”。 所以我有两个选择。 1)忽略棉绒警告 2)在我的帮助方法中删除“静态”。 哪个更好? 或者提出第三种解决方案。
3回复

静态继承:可能吗?有更好的解决方案吗?

考虑以下示例(警告非常错误的代码): B级扩展了A级 C类与B类几乎相同 最终,主班经营着这件事 所以它的输出是: 并且我知道这是因为displayfoo类引用了A类中的静态foo,因此请忽略此内容。 我认为我现在已经足够具体地描述我的问题和目标了。 解决方案有人吗?
1回复

使用RoboVM进行应用内购买的解决方案是什么?

我想在iOS上的RoboVM应用程序中使用应用程序内购买。 据我所知,我需要访问Apples StoreKit框架。 我找到了以下解决方案: robovm-ios-bindings (标记为弃用以支持robopods) robopods (..我找不到StoreKid绑定)
1回复

Box2dRopeJoint错误-修复或替代解决方案?

我想做的是创造绳索游戏。 您可以在下面找到一部电影现在的样子。 https://youtu.be/QTULCGNF70I 我正在使用 RopeJoint 并且我正在减少每帧的 maxLength 以便能够加速。 一切看起来都很好,但问题出现在气泡球上。 我意识到缩短绳索不会增加球的速度。 例如,如
1回复

Akka(Java)教程中不推荐使用“UntypedActor”的解决方案

原始代码 Akka教程包含以下代码: http : //doc.akka.io/docs/akka/2.0.2/intro/getting-started-first-java.html 其中,不推荐使用UntypedActorFactory 。 我的Mod 所以我尝试使用Pro
1回复

VS2015:Nana的静态库解决方案

我正在尝试将GUI实现到我的C ++应用程序中,我发现这个库叫做Nana。 但是,提供的说明对我来说非常不清楚,更具体地说,关于创建静态库的部分。 在您使用的IDE /构建系统中创建静态链接库解决方案,并将放置在NanaPath / source及其所有子目录中的所有文件添加到项目中。