Java 从libGDX应用程序Android获取视图
我正在制作一个LibGDX应用程序,我需要将视图放到Android应用程序中。 以下是获取视图的代码:Java 从libGDX应用程序Android获取视图,java,android,view,libgdx,Java,Android,View,Libgdx,我正在制作一个LibGDX应用程序,我需要将视图放到Android应用程序中。 以下是获取视图的代码: package jangkoo.game.shadowfiend.android; import jangkoo.game.shadowfiend.ShadowFiendGame; import android.os.Bundle; import android.util.Log; import android.view.View; import com.badlogic.gdx.back
package jangkoo.game.shadowfiend.android;
import jangkoo.game.shadowfiend.ShadowFiendGame;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import com.badlogic.gdx.backends.android.AndroidApplication;
import com.badlogic.gdx.backends.android.AndroidApplicationConfiguration;
public class LibGdx extends AndroidApplication {
private static final String TAG = "LibGDx";
public View view;
Bundle savedInstanceState;
@Override
protected void onCreate (Bundle savedInstanceState) {
if(savedInstanceState == null)
this.savedInstanceState = getIntent().getExtras();
Log.e(TAG,savedInstanceState + "");
super.onCreate(savedInstanceState);
AndroidApplicationConfiguration config = new AndroidApplicationConfiguration();
view = initializeForView(new ShadowFiendGame(), config);
}
public LibGdx(){
onCreate(new Bundle());
}
@Override
protected void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
}
}
我想从中获取libGDX.view,用于一个不扩展AndroidApplication的类
protected void onCreate (Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
interstitialAd = new IntestialAds(this);
inflater = LayoutInflater.from(this);
config = new AndroidApplicationConfiguration();
libGdx = new LibGdx();
Log.e(TAG,libGdx.view + "");
}
但是,onCreate函数具有nullpointer异常。如何处理这个问题?在libgdx项目中使用Android视图是错误的。您应该将所有与view一起工作的逻辑放在
LibGdx extends android应用程序
类上,如果您想从另一个类访问该逻辑,您应该创建接口
,该接口将传输到主游戏
类。这样,您就可以在任何地方访问“特定于Android”的逻辑。查看本指南了解更多详细信息-我希望开始布局将是本机代码,然后按下按钮将调用initializeForView以获取游戏视图。但看起来我需要在onCreate上调用它。我该怎么做?我需要通过LibGdx?1创建所有屏幕。在LibGdx onCreate中调用initializeForView。2.将其添加到游戏中,但将其设置为不可见。3.将要调用的功能按入界面中的按钮。4.在LibGdx类中实现接口。4.现在可以在需要的地方调用它,例如,可以创建两个函数showAd()和hideAd()。这里也有同样的例子:像这样,我如何在主游戏中获得一些值,比如切换到其他本机代码屏幕的状态?您只需在接口中创建一个函数,它将返回您的状态,然后从接口返回其他带有natvie代码的函数。其主要思想是:拥有尽可能少的特定于平台的代码。