[flutter] 플러터 Table 위젯에서 특정 행 또는 열 삭제하기

Table 위젯은 데이터를 행과 열의 형태로 표시하는 데 사용됩니다. 때때로 특정 행이나 열을 동적으로 추가하거나 삭제해야 할 수도 있습니다. 이 글에서는 Table 위젯에서 특정 행 또는 열을 삭제하는 방법에 대해 알아보겠습니다.

특정 행 삭제하기

특정 행을 삭제하려면 해당 행을 포함하는 데이터를 제거하고, 화면을 다시 그리도록 해야 합니다. 예를 들어, 리스트를 사용하여 데이터를 관리하고 있다면, 해당 항목을 리스트에서 삭제한 후 setState를 호출하여 화면을 갱신할 수 있습니다.

다음은 특정 행을 삭제하는 예시 코드입니다.

List<List<String>> tableData = [
  ['A1', 'B1', 'C1'],
  ['A2', 'B2', 'C2'],
  ['A3', 'B3', 'C3'],
];

void _removeRow(int rowIndex) {
  setState(() {
    tableData.removeAt(rowIndex);
  });
}

위 코드에서는 tableData 리스트에서 removeAt 메소드를 사용하여 특정 인덱스의 행을 삭제하고, setState를 호출하여 화면을 다시 그리도록 합니다.

특정 열 삭제하기

특정 열을 삭제하는 경우에도 마찬가지로 데이터를 변경하고 화면을 갱신해주어야 합니다. 열을 리스트 형태로 관리하는 경우에는 해당 열의 데이터를 모두 삭제한 후 다시 setState를 호출하여 화면을 갱신합니다.

다음은 특정 열을 삭제하는 예시 코드입니다.

void _removeColumn(int columnIndex) {
  setState(() {
    for (int i = 0; i < tableData.length; i++) {
      tableData[i].removeAt(columnIndex);
    }
  });
}

위 코드에서는 각 행의 특정 인덱스에 해당하는 항목을 removeAt 메소드를 사용하여 삭제하고, 마찬가지로 setState를 호출하여 화면을 다시 그리도록 합니다.

Table 위젯에서 특정 행이나 열을 삭제하는 방법을 알아보았습니다. 필요에 맞게 코드를 수정하여 원하는 동작을 구현할 수 있습니다.

더 자세한 내용은 Flutter 공식 문서를 참고하시기 바랍니다.