陈力
2023-05-29 9580ef19966b4381216ec863c8c1c333d489f33a
app/src/main/java/com/lotaai/canguiayw/SelectFragment.java
@@ -16,14 +16,20 @@
import androidx.fragment.app.Fragment;
import com.bin.david.form.core.SmartTable;
import com.bin.david.form.core.TableConfig;
import com.bin.david.form.data.CellInfo;
import com.bin.david.form.data.column.Column;
import com.bin.david.form.data.format.IFormat;
import com.bin.david.form.data.format.bg.IBackgroundFormat;
import com.bin.david.form.data.format.bg.ICellBackgroundFormat;
import com.bin.david.form.data.format.selected.ISelectFormat;
import com.bin.david.form.data.style.FontStyle;
import com.bin.david.form.data.table.TableData;
import com.blankj.utilcode.util.LogUtils;
import com.blankj.utilcode.util.ScreenUtils;
import com.lotaai.canguiayw.common.SettingConfig;
import com.lotaai.canguiayw.sqllitedb.Order;
import com.lotaai.canguiayw.sqllitedb.SqlliteDbManage;
import org.greenrobot.eventbus.EventBus;
@@ -62,19 +68,9 @@
        Column<String> gridNo = new Column<>("格子", "gridNo");
        Column<String> orderNo = new Column<>("订单号", "orderNo");
        Column<String> putIntime = new Column<>("放入时间", "putInDate");
        Column<String> takeCode = new Column<>("操作", "takeCode");
        Column<String> takeCode = new Column<>("取餐码", "takeCode");
        List<Order> lists = new ArrayList<>();
        for (int i = 0;i < 3; i++) {
            Order order = new Order();
            order.setGridNo(Integer.toString(i));
            order.setOrderNo("G202305016001-"+Integer.toString(i));
            Date dd = new Date();
            order.setPutInDate(dd.getTime());
            order.setState(0);
            order.setTakeCode("56897");
            lists.add(order);
        }
        List<Order> lists = SqlliteDbManage.getInstance().selectOrtdersByState(0);
        TableData<Order> tableData = new TableData<Order>("测试表格名字",lists,gridNo, orderNo, putIntime, takeCode);
        //设置数据
@@ -101,25 +97,35 @@
        // 设置表格主标题
        setTable.setTableData(tableData);
        //addHandler.sendEmptyMessageDelayed(0,10*1000);
        clickDetail();
    }
    private Handler addHandler = new Handler() {
        @Override
        public void handleMessage(Message msg) {
            List<Order> lists = new ArrayList<>();
            for (int i = 9;i < 13; i++) {
                Order order = new Order();
                order.setGridNo(Integer.toString(i));
                order.setOrderNo("G202305016001-"+Integer.toString(i));
                Date dd = new Date();
                order.setPutInDate(dd.getTime());
                order.setState(0);
                order.setTakeCode("56897");
                lists.add(order);
            }
            setTable.addData(lists,true);
    public void clickDetail(){
        if (setTable!=null){
            setTable.getTableData().setOnRowClickListener(new TableData.OnRowClickListener() {
                @Override
                public void onClick(Column column, Object o, int col, int row) {
                 LogUtils.i("click row "  + row);
                 final int rr = row;
                    setTable.getConfig().setContentCellBackgroundFormat(new ICellBackgroundFormat<CellInfo>() {
                        @Override
                        public void drawBackground(Canvas canvas, Rect rect, CellInfo cellInfo, Paint paint) {
                            if(cellInfo.row!=rr){
                                paint.setColor(Color.GRAY);
                            }
                            else{
                                paint.setColor(Color.BLUE);
                            }
                            canvas.drawRect(rect,paint);
                        }
                        @Override
                        public int getTextColor(CellInfo cellInfo) {
                            return 0;
                        }
                    });
                }
            });
        }
    };
    }
}