2012-02-18 69 views
0

我想實現小區列表,並插入我的數據從服務器來在我的小區列表,一切工作在celltable罰款,但現在我已經改用cellList這是不工作試圖實現GWT cellList

從GWT展會情況下我做了這個類

  public class EmployerJobCell extends AbstractCell<EmployerJobs> { 

@Override 
public void render(com.google.gwt.cell.client.Cell.Context context, 
     EmployerJobs value, SafeHtmlBuilder sb) { 

    if (value == null) { 
      return; 
      } 

      sb.appendHtmlConstant("<table>"); 

      // Add the contact image. 
      sb.appendHtmlConstant("<tr><td rowspan='3'>"); 
      sb.appendHtmlConstant("</td>"); 

      // Add the name and address. 
      sb.appendHtmlConstant("<td style='font-size:95%;'>"); 
      sb.appendEscaped(value.getJobTitle()); 
      sb.appendHtmlConstant("</td></tr><tr><td>"); 
      sb.appendEscaped(value.getJobLevel()); 
      sb.appendHtmlConstant("</td></tr></table>"); 



} 

}

在我看來類我這樣做

  EmployerJobCell jobCell = new EmployerJobCell(); 
      celllist = new CellList<EmployerJobs>(jobCell); 
    celllist.setPageSize(5); 
    verticalpanel.add(celllist); 

,但我沒有對我的看法得到任何東西。

我一定要使用setRowData呢?

如果是的話,我將如何得到我的數據

  ArrayList<EmployerJobs > values = new ArrayList<EmployerJobs>(); 
     celllist.setRowData(values); 

喜歡將我放什麼東西在我的名單

  values. ??  

回答

0

CellList作品基本相同CellTable - 無論是獲取數據的列表,並用Cell繪製它們。主要的區別是CellList只繪製與各種內容的一個細胞,而CellTable可以從模型對象繪製不同的幾個,每個讀取數據。

兩個實施HasData,使您可以提供數據和監測的選擇,等等。因此,在這兩種情況下,你應該呼籲各widget.setRowData(index, data)得到它繪製的內容。因此,在短期,完全取代一個給CellList的一個叫做valuesList的內容,做這樣的事情:

List<EmployerJobs> values = ... 
CellList<EmployerJobs> cellList = ... 

cellList.setRowCount(0);// clear out existing rows 
cellList.setRowData(0, values);// apply new rows 

或者更簡單地說,使用AbstractHasData.setRowData(List)

cellList.setRowData(values); //clear and apply new rows 

這應該讓你直到您正在顯示數據。

使用分頁更有這個有點複雜 - 通常你使用分頁控件像SimplePager,和您提供的數據未給HasData,但數據提供者,這反過來將它交給小部件的基礎上,尋呼信息。通過分發數據開了一個DataProvider它來管理,並讓一個AbstractPager允許用戶決定他們想要看什麼看有關如何做到這一點一些例子http://code.google.com/webtoolkit/doc/latest/DevGuideUiCellWidgets.html#paginghttp://code.google.com/p/google-web-toolkit/source/browse/trunk/user/javadoc/com/google/gwt/examples/view/AsyncDataProviderExample.java?r=8944