Java Android——findViewById(R.)分配的SurfaceView赢得';不允许访问自定义字段

Java Android——findViewById(R.)分配的SurfaceView赢得';不允许访问自定义字段,java,android,xml,surfaceview,Java,Android,Xml,Surfaceview,我有一个程序,它是有效的。我试图使XML资源中声明的一个SurfaceView在活动类中可访问。surfaceview已正确分配,允许访问surfaceview方法/元素,但不允许访问我的自定义方法/元素。如何访问自定义元素 public class main extends Activity { SurfaceView viewer; public void onCreate(...) { ... //Successfully assigns object to vi

我有一个程序,它是有效的。我试图使XML资源中声明的一个SurfaceView在活动类中可访问。surfaceview已正确分配,允许访问surfaceview方法/元素,但不允许访问我的自定义方法/元素。如何访问自定义元素

public class main extends Activity { SurfaceView viewer; public void onCreate(...) { ... //Successfully assigns object to viewer viewer = (SurfaceView)findViewById(R.id.Viewer); } void someMethod(){ viewer.doSomethingRad(); //FAIL } } ////////////// public class Viewer extends SurfaceView... { .... } /////////////Main.xml ... ~view class="com.ballroll.Viewer" android:layout_width="fill_parent" android:layout_height="fill_parent" android:id="@+id/Viewer" android:text="Viewer"~ ~/view~ //I don't know how to escape ' 公共类主要扩展活动{ SurfaceView查看器; 创建时的公共无效(…){ ... //已成功将对象分配给查看器 查看器=(SurfaceView)findViewById(R.id.viewer); } void方法(){ viewer.doSomethingRad();//失败 } } ////////////// 公共类查看器扩展了SurfaceView。。。{ .... } /////////////Main.xml ... ~view class=“com.ballroll.Viewer” android:layout\u width=“fill\u parent” android:layout\u height=“fill\u parent” android:id=“@+id/Viewer” android:text=“查看器”~ ~/查看~ //我不知道如何逃脱'
WTF?提前谢谢

您正在将视图声明为SurfaceView。您应该使用类名声明它

 Viewer viewer;

  public void onCreate(...) {
    ...
    //Successfully assigns object to viewer
    viewer = (Viewer)findViewById(R.id.Viewer); 
  }