如何使用android.view.SurfaceView

如何使用android.view.SurfaceView,android,android-canvas,surfaceview,Android,Android Canvas,Surfaceview,我正在尝试使用SurfaceView小部件。我有一节课 public class OurView extends SurfaceView implements Runnable { public OurView(Context context) { super(context); Log.d("OurView", "Yay We started"); } @Override public void run() { } }

我正在尝试使用SurfaceView小部件。我有一节课

public class OurView extends SurfaceView implements Runnable {
    public OurView(Context context) {
        super(context);
        Log.d("OurView", "Yay We started");
    }

    @Override
    public void run() {

    }
}
因此,我在活动的XML中有一个SurfaceView小部件。然后我尝试在
onCreate
方法中绑定它

TheView = (OurView) findViewById(R.id.theSurfaceView);
问题是这里我得到了一个错误,我无法将
OurView
转换为
android.view.SurfaceView

我知道通常我可以在
onCreateMethod

TheView = new OurView(this);
setContentView(TheView);

问题是我不想这样做,我不想画我的整个活动,我只想画我放在布局上的SurfaceView小部件。我该怎么做呢?

你应该把你定制的SurfaceView
com.xx.我们的视图
放在你的布局中,而不是
SurfaceView

哦,好的,我想我明白了。虽然我的课只是一个表面视图,但这并不奇怪,这是因为布局的膨胀。在XML中没有继承这样的东西,那么XML解析器如何知道您真正想要的类呢?