在数据表格的 DataRow 里面,selected 属性的值表示的是行的选择状态 .. 这个状态我们可以使用 post 里的 selected 属性来表示 .. 然后找到 model 下面的这个 post.dart .. 按住 alt 键,点一下 posts,可以打开定义这个 posts 的地方 .
在 Post 里面,添加一个 bool 类型的 selected .. 默认让它的值等于 false ...
在这个 DataRow 里面,处理选择动作用的方法叫 onSelectChanged .. 它接收一个 bool 类型的参数,名字可以是 value .. 这个 value 表示的就是当前行的选择状态 ... 被选了,它的值就是 true,取消选择,它的值就会是 false ..
你会发现,添加了这个方法以后,行的最左边就会出现一个复选框 .. 可以用来选择行 ..
这个 onSelectChanged 里面,用一下 setState .. 里面判断一下 .. 如果 post.selected 的值不等于 value .. 我们就可以让 post.selected 的值等于 value 的值 ..
下面到模拟器上试一下这个表格的选择行的功能 ..
按下行 .. 可以切换行的选择状态 ...
表格栏目名字的左边有一个复选框可以切换所有行的选择状态 ... 如果你想定制这个全选的动作,可以在 DataTable 里面添加一个 onSelectAll 方法 .. 它也接收一个 bool 类型的 value 参数 .. 这个 value 表示的就是全选的状态 ..