1、点击事件
问题描述
在GIthub找的一个非常优秀的Android开源表格样式,可是不会写单元格点击事件
解决方案
table.getTableData().setOnRowClickListener(new TableData.OnRowClickListener<EquipMaintenancePlan>() {
@Override
public void onClick(Column column, EquipMaintenancePlan equipMaintenancePlan, int col, int row) {
System.out.println(col+" "+row);
}
});
测试用例
注意事项
设置行点击事件前table必须已经填充完数据了,也就是getTableData方法需要获得值,在此基础才能添加点击事件。
2、点击效果
/**
* 单元格点击事件
*/
table.getTableData().setOnRowClickListener(new TableData.OnRowClickListener<EquipMaintenancePlan>() {
@Override
public void onClick(Column column, EquipMaintenancePlan equipMaintenancePlan, final int col, final int row) {
System.out.println(col+" "+row);
/**
* 变色
*/
table.getConfig().setContentCellBackgroundFormat(new ICellBackgroundFormat<CellInfo>() {
@Override
public void drawBackground(Canvas canvas, Rect rect, CellInfo cellInfo, Paint paint) {
if(cellInfo.row==row){
paint.setColor(Color.GRAY);
}
else{
paint.setColor(Color.WHITE);
}
canvas.drawRect(rect,paint);
}
@Override
public int getTextColor(CellInfo cellInfo) {
return 0;
}
});
}
});