[flutter] ListView에서 아이템을 선택하여 특정 기능 실행하기

Flutter 앱을 개발할 때, ListView에서 아이템을 선택한 후 특정 기능을 실행하는 것은 매우 일반적입니다. 이를 위해서는 ListView 위젯과 GestureDetector를 사용하여 각 아이템의 터치 이벤트를 처리할 수 있습니다.

ListView 위젯 구성

ListView 위젯을 사용하여 수직 스크롤이 가능한 목록을 만들 수 있습니다. 다음은 간단한 ListView 위젯의 예시입니다.

ListView(
  children: <Widget>[
    ListTile(title: Text('아이템 1')),
    ListTile(title: Text('아이템 2')),
    ListTile(title: Text('아이템 3')),
  ],
)

GestureDetector를 사용한 아이템 선택 기능 구현

ListView의 각 아이템에 터치 이벤트를 추가하기 위해 GestureDetector 위젯을 사용할 수 있습니다. 아래는 GestureDetector를 사용하여 ListView의 아이템을 터치했을 때 기능을 실행하는 방법입니다.

ListView(
  children: <Widget>[
    GestureDetector(
      onTap: () {
        // 아이템 1 선택 시 실행할 기능
      },
      child: ListTile(title: Text('아이템 1')),
    ),
    GestureDetector(
      onTap: () {
        // 아이템 2 선택 시 실행할 기능
      },
      child: ListTile(title: Text('아이템 2')),
    ),
    GestureDetector(
      onTap: () {
        // 아이템 3 선택 시 실행할 기능
      },
      child: ListTile(title: Text('아이템 3')),
    ),
  ],
)

선택한 아이템에 따라 기능 실행하기

각 아이템에 대한 특정 기능을 실행하기 위해서는 onTap 콜백에서 조건문을 사용하여 선택한 아이템에 맞는 기능을 실행할 수 있습니다.

GestureDetector(
  onTap: () {
    if (selectedItem == '아이템 1') {
      // 아이템 1 선택 시 실행할 기능
    } else if (selectedItem == '아이템 2') {
      // 아이템 2 선택 시 실행할 기능
    } else if (selectedItem == '아이템 3') {
      // 아이템 3 선택 시 실행할 기능
    }
  },
  child: ListTile(title: Text(selectedItem)),
)

이제 ListView에서 아이템을 선택하여 원하는 기능을 실행할 수 있는 방법을 알아보았습니다.

위 코드를 참고하여 Flutter 앱에서 ListView와 GestureDetector를 사용하여 아이템을 선택하고 특정 기능을 실행하는 방법을 구현해 보세요!