我正在制作一个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.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异常。我怎么处理这个?
答案 0 :(得分:0)
在libgdx项目中使用Android视图是错误的方法。你应该放置所有适用于LibGdx extends AndroidApplication
类视图的逻辑,如果你想从另一个类访问这个逻辑,你应该创建Interface
,它将被转移到你的主Game
类。这样您就可以在任何地方访问“Android特定”逻辑。有关详细信息,请参阅本指南 - Interfacing with platform specific code