seong
Flutter 스와이프로 삭제 시 Dialog띄우기 본문
스와이프 만들기 https://seong9566.tistory.com/252
스와이프 위젯의 확인창 띄우기
그중 확인창을 띄우고 싶다면 confirmDismiss를 사용하면된다.
사용 방법은 DismissDirection 매개변수를 한개 받아 Future로 true,flase를 검증해 삭제 및 취소를 하는 방식이다.
confirmDismiss 코드
주의할점 - onDismissed이전에 실행 되어야 한다.
내부 설명을 보면 ConfirmDismissCallback 함수는 Future의 bool값을 반환받기 때문에 async,await를 사용해주었다.
confirmDismiss: (DismissDirection direction) async {
return await showDialog(
context: context,
builder: ((context) {
return AlertDialog(
title: Text("정말 삭제를 하시겠습니까?"),
content: Text("삭제하면 채팅방의 모든 내용은 삭제 됩니다."),
actions: <Widget>[
TextButton(
onPressed: () => Navigator.of(context).pop(true),
child: const Text("Delete")),
SizedBox(width: 10),
TextButton(
onPressed: () => Navigator.of(context).pop(false),
child: const Text("Cancel"),
),
],
);
}));
// onDismissed: (direction) { // 상태관리에 필요함.
// setState(() {
// items.removeAt(index);
// });
// },
},
실행화면
'Flutter > 중계 플랫폼 프로젝트' 카테고리의 다른 글
8. 리뷰 작성 페이지 (별점 주기) (0) | 2022.12.04 |
---|---|
Flutter RatingBar (리뷰 별점 ) 사용하기 (0) | 2022.12.04 |
Flutter Dismissible - 스와이프 위젯 / 채팅 방 리스트 페이지 (0) | 2022.12.02 |
7. 프로필 등록 / 수정 페이지 (0) | 2022.12.01 |
6. 프로필 페이지 (2) | 2022.12.01 |