[flutter] ListView의 아이템 삭제하기

리스트뷰(ListView)는 사용자가 터치하여 아이템을 삭제하는 기능을 제공하는 앱에서 자주 사용됩니다. 이번 포스트에서는 Flutter에서 리스트뷰의 아이템을 삭제하는 방법에 대해 알아보겠습니다.

1. ListView 구성하기

우선, 리스트뷰를 생성하고 아이템 리스트를 만듭니다.

ListView.builder(
  itemCount: itemList.length,
  itemBuilder: (BuildContext context, int index) {
    return ListTile(
      title: Text(itemList[index]),
      trailing: IconButton(
        icon: Icon(Icons.delete),
        onPressed: () {
          _deleteItem(index);
        },
      ),
    );
  },
)

위 코드에서는 ListView.builder를 사용하여 아이템 리스트를 만들고, 각각의 아이템에는 삭제 버튼이 포함된 ListTile을 사용했습니다.

2. 아이템 삭제하기

아이템을 삭제하기 위해서는 리스트에서 해당 아이템을 제거해야 합니다. 다음은 _deleteItem 메서드의 구현 예시입니다.

void _deleteItem(int index) {
  setState(() {
    itemList.removeAt(index);
  });
}

위 코드에서는 itemList에서 주어진 인덱스에 해당하는 아이템을 제거한 후 setState 메서드를 호출하여 화면을 다시 그리도록 합니다.

이제 리스트뷰에서 각 아이템의 삭제 버튼을 터치하면 해당 아이템이 삭제됩니다.

마무리

이번 포스트에서는 Flutter에서 ListView의 아이템을 삭제하는 방법에 대해 알아보았습니다. 리스트뷰를 다룰 때 이러한 삭제 기능을 구현하면 사용자 친화적인 앱을 만들 수 있을 것입니다.