公共静态函数

时间:2016-09-10 18:05:34

标签: java static libgdx

我的xml类上有这个函数用于将图像放在纹理上,String ficheiro是文件的名称,SpriteCena是精灵

public class xml {

private static Texture TexturaCaixaDialogo;
private static Sprite SpriteCena;
private final MyGdxGame app;

public xml(final MyGdxGame app){
    this.app = app;

}

..................其他代码.........

public static carregarcena(String ficheiro){
   TexturaCaixaDialogo = app.assets.get("cenarios/cenas/"+ficheiro,Texture.class);
   SpriteCena = new Sprite(TexturaCaixaDialogo);
}

} // xml类的结尾

它的作用是从我的libgdx纹理管理器加载器中获取纹理 它在 app.assets 上给了我一个错误。错误是:无法对非静态字段应用程序进行静态引用

  

函数carregarcena()必须是公共的和静态的

任何解决方案?

1 个答案:

答案 0 :(得分:0)

您正试图从静态方法获取非静态字段应用程序,但这是非法的,因为非静态变量属于对象,而不属于类。

您有两种方法可以实现这一目标:

  1. 将应用字段设为静态private static MyGdxGame app;

  2. 让您的方法非静态public void carregarcena(String ficheiro)

  3. 您还缺少carregarcena的返回类型。

相关问题