[flutter] ListView에서 아이템을 여러 개 선택하기

Flutter 앱에서 사용자가 ListView에서 여러 개의 아이템을 선택할 수 있도록 하는 것은 매우 일반적입니다. 이를 구현하기 위해서는 몇 가지 개념과 기술이 필요합니다.

이 블로그 포스트에서는 Flutter에서 ListView에서 여러 개의 아이템을 선택하는 방법에 대해 살펴보겠습니다.

ListView.builder

ListView.builder를 사용하면 리스트 아이템을 동적으로 만들 수 있습니다. 이를 사용하여 선택 가능한 아이템 목록을 만들어 봅시다.

ListView.builder(
  itemCount: _items.length,
  itemBuilder: (context, index) {
    return ListTile(
      title: Text(_items[index]),
      onTap: () {
        _onItemTapped(index);
      },
      selected: _selectedItems.contains(_items[index]),
    );
  },
)

선택한 아이템 관리

Flutter 앱에서 선택한 아이템을 관리하는 방법 중 하나는 선택한 아이템의 인덱스를 리스트로 관리하는 것입니다. 다음은 _onItemTapped 메서드의 예시입니다.

List<String> _selectedItems = [];

void _onItemTapped(int index) {
  setState(() {
    if (_selectedItems.contains(_items[index])) {
      _selectedItems.remove(_items[index]);
    } else {
      _selectedItems.add(_items[index]);
    }
  });
}

마치며

이제 여러 개의 아이템을 선택하는 기능을 구현하는 방법에 대해 간단히 알아보았습니다. ListView.builder를 사용하여 선택 가능한 아이템 목록을 만들고, 선택한 아이템을 관리하는 방법을 살펴보았습니다. 여기서 제시된 예시를 참고하여 여러분의 Flutter 앱에 적용해보세요.

더 많은 정보를 원하시면 공식 문서를 참조하세요.