Skip to content

475789729/perfecttable

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Jan 11, 2019
99c7237 · Jan 11, 2019

History

18 Commits
Jan 11, 2019
Aug 29, 2018
Jan 9, 2019
Jan 8, 2019
Aug 29, 2018
Aug 29, 2018
Aug 29, 2018
Jan 8, 2019

Repository files navigation

   演示图片:<br>

test

   特性:
   1.表格过宽或者过高之后能够产生可滚动效果
   2.第一行作为列名不上下滚动,第一列作为行头,不左右滚动
   3.支持其他列设置为固定列,设置之后该列不再左右滚动
   4.支持多级列名,如果上级列名相等,就自动组合
   5.支持第一列的view自定义
   6.单元格颜色,padding,border等的设置
   
   
   
   使用方法: 
    Column column1 = new Column();
    column1.setColumnName("姓名");
    column1.setProperty("name");

    Column column2 = new Column();
    column2.setColumnName("性别");
    column2.setProperty("sex");

    //固定列自动提前位置
    Column column3 = new Column();
    column3.setColumnName("固定列,不左右滚动");
    column3.setProperty("height");
    column3.setFix(true);

    Column column4 = new Column();
    column4.setColumnName("子列一");
    column4.setParenetName(new String[]{"组合列名"});
    column4.setProperty("sd");



    Column column5 = new Column();
    column5.setColumnName("子列二");
    //控件会自动组合
    column5.setParenetName(new String[]{"组合列名"});
    column5.setProperty("sdd");

    List<Column> columnList = new ArrayList<Column>();
     columnList.add(column1);
     columnList.add(column2);
     columnList.add(column3);
     columnList.add(column4);
     columnList.add(column5);
    PerfectTableViewBuilder builder = new PerfectTableViewBuilder(this);
     builder.setColumnList(columnList);
     //行头的view是自定义的,不需要的话,不设置RowHeaderViewFactory就行
     builder.setRowHeaderViewFactory(new PerfectTableView.RowHeaderViewFactory() {
         @Override
         public View create(TableData tableData, int rowIndex, Object itemData) {
             TextView tv = new TextView(MainActivity.this);
             tv.setText(String.valueOf(rowIndex));
             tv.setTextSize(16);
             return tv;
         }
     });
     PerfectTableView<Student> tableView = builder.create();
     List<Student> studentList = new ArrayList<Student>();
     studentList.add(new Student("张三", "男", "170", "sd", "sdd"));
    studentList.add(new Student("李四", "男", "170", "sd", "sdd"));
    tableView.loadData(new TableData<Student>(studentList));
    ((RelativeLayout) findViewById(R.id.content)).addView(tableView);

Releases

No releases published

Packages

No packages published

Languages