我有一个tableview tbvAlumnos ,其中有两个tablecolumns: tbcNombretbcApellidos .

我从pojo映射了一个列表:

public class Alumno
{
  private boolean activo;
  private String nombre;
  private String apellidos;
}

我将alumnos的列表映射到tableview的地方我希望文本用红色填充行,其中alumno activo为false,文本用绿色填充行为true .

我试过,但我不知道如何让每个校友检查是否有效,因为跟随代码失败,因为我传递Alumno项而不是String .

tbcNombre.setCellFactory(column -> {
        return new TableCell<Alumno, Alumno>() {
            @Override
            protected void updateItem(Alumno item, boolean empty) {
                super.updateItem(item, empty);

                if (item == null || empty) {
                    setText(null);
                    setStyle("");
                } else {
                    // Format date.
                    setText(item.toString());
                    setStyle("-fx-text-fill: red");
                }
            }
        };
    });

那么如何根据每行每个项的条件为所有行字段添加样式 .