CellTable を入力しようとしていますが、1 つの列に画像を表示したいと考えています。この画像は、1 行を除くすべての行に表示する必要があります。このようなものを追加する方法を知っている人はいますか?
2 に答える
4
これは私がしたことです:
Column column = new Column<RowObject, ImageResource>(new ImageResourceCell()) {
@Override
public ImageResource getValue(RowObject object) {
if (showImageFor(object)) {
return getImageResource();
} else {
return null;
}
}
};
cellTable.addColumn(column);
ImageResource の取得方法がわからない場合は、こちらのドキュメントを確認してください。
更新: カスタム セルを使用する場合は、セルの render メソッドで画像を描画するかどうかを決定する必要があります。
public class CustomCell extends AbstractCell<ColumnObject> {
@Override
public void render(Context context, ColumnObject value, SafeHtmlBuilder sb) {
if (showImageFor(value)) {
// Render the image
}
}
}
次に、次のように列をセルに追加できます。
Column column = new Column<RowObject, ColumnObject>(new CustomCell()) {
@Override
public ColumnObject getValue(RowObject object) {
return getColumnObjectFrom(object);
}
};
cellTable.add(column);
于 2012-10-30T07:32:30.447 に答える
0
ImageCell または ImageResourceCell を使用します。getValue() では、null を返す (画像は表示されません) か、URL/ImageResource を返します。
于 2012-10-29T15:45:18.517 に答える