[flutter] 플러터에서의 Swipeable 동작 원리 이해하기
플러터 애플리케이션을 개발할 때 Swipeable한 동작을 구현할 때에는 이 동작의 원리를 이해하는 것이 중요합니다. 사용자가 리스트 아이템을 swipe하여 삭제할 수 있는 Swipeable한 리스트를 만들기 위해서는 GestureDetector나 ListView 등을 적절히 활용할 수 있습니다.
Swipeable한 리스트 구현하기
Swipeable한 리스트를 구현하기 위해서는 먼저 리스트 아이템에 Swipe 동작을 감지할 수 있는 Widget을 추가해야 합니다. 이를 위해서 GestureDetector나 InkWell과 같은 Widget을 사용할 수 있습니다. 그리고 해당 Widget을 swipe 할 때의 동작을 정의해주어야 합니다.
아래는 예시 코드입니다.
ListView.builder(
itemCount: items.length,
itemBuilder: (context, index) {
return Dismissible(
key: UniqueKey(),
background: Container(color: Colors.red),
onDismissed: (direction) {
setState(() {
items.removeAt(index);
});
},
child: ListTile(
title: Text(items[index]),
),
);
},
)
위 코드에서 Dismissible
이라는 Widget을 사용하여 리스트 아이템을 swipe하여 삭제하는 기능을 구현하였습니다. background
속성을 사용하여 swipe 동작 시 보여지는 배경을 지정할 수 있습니다. 또한 onDismissed
속성을 사용하여 swipe 동작이 완료된 후의 동작을 정의할 수 있습니다.
결론
플러터에서 Swipeable한 동작을 구현하기 위해서는 해당 동작을 감지하고 그에 따른 동작을 정의하는 것이 중요합니다. 위에서 소개한 Dismissible
Widget 외에도 다양한 방법으로 Swipeable한 동작을 구현할 수 있으며, 개발자의 상황에 맞추어 적절한 방법을 선택하여 구현할 수 있습니다.
더 많은 정보를 원하시면 플러터 공식 문서를 참고하시기 바랍니다.