2012-12-14 4 views
0

나는 기본적인 UI 바인더 레이아웃 파일을 가지고 있으며 주 콘텐츠 영역에 캔버스를 배치하려고합니다.gwt ui-binder에 캔버스를 추가하는 방법은 무엇입니까?

그러나 다음을 사용하면 오류가 제공합니다

No class matching "canvas" in urn:import:com.google.gwt.canvas.client: <c:canvas ui:field='canvas'> 

내 소스에 어떤 문제가 있습니까?

.ui.xml :

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent"> 
<ui:UiBinder xmlns:ui='urn:ui:com.google.gwt.uibinder' 
    xmlns:g='urn:import:com.google.gwt.user.client.ui' 
    xmlns:c='urn:import:com.google.gwt.canvas.client'> 
    <g:DockLayoutPanel> 
    <!-- other stuff... -> 

     <g:center> 
      <c:canvas ui:field="canvas" /> 
     </g:center> 
    </g:DockLayoutPanel> 
</ui:UiBinder> 

된 .java :

@UiField//(provided = true) 
Canvas canvas; 

@Override 
public void onModuleLoad() { 
    canvas = Canvas.createIfSupported(); 
    canvas.setWidth("400px"); 
    canvas.setHeight("400px"); 
    canvas.setCoordinateSpaceWidth(400); 
    canvas.setCoordinateSpaceHeight(400); 
} 

답변

1

uibuilder의 캔버스 요소가 대문자로 시작하는 OMG가 ...

<c:Canvas... 
+0

바와 같이 [이 질문에 대한 답변 (http://stackoverflow.com/questions/19281993/how-to-integrate-gwt-uibinder-with-canvas), "UI로 캔버스를 만들 수 없습니다. : 제로 인수 생성자 또는 @UIConstructor가 없으므로 바인더. " –