我有一个看起来像这样的自定义 SurfaceView:
public class GFXSurface extends Activity implements OnTouchListener
{
.
.
GameSurface gameSurfaceView;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.game);
gameSurfaceView = (GameSurface)findViewById(R.id.svgame);
fullscreen();
initialize();
}
.
.
.
public class GameSurface extends SurfaceView implements Runnable
{
.
.
public GameSurface(Context context)
{
super(context);
ourHolder = getHolder();
}
.
.
.
}
}
我的问题是如何在我的 xml 布局中引用它?
我正在使用 xml 布局,因为我需要添加一些 表面 View 之上的东西
我尝试了几种方法但都失败了...
这行不通:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<com.bla.bla.GFXSurface.GameSurface
android:id="@+id/svgame"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
.
.
.
</FrameLayout>
非常感谢您的帮助!!!!
最佳答案
您的GameSurface
类需要是静态的。您不能在布局中使用非静态嵌套类,因为您需要外部类实例来创建此类的对象。
关于android - 给定 Activity 中的嵌套类,如何初始化自定义 surfaceView?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11580096/