안드로이드에는 뒤로 갈 수 있는 백버튼이 있다. 이에 대해서 이벤트 처리를 할 일이 있어서 공부해야한다.
백버튼 이벤트를 감지하려면 WillPopScope를 사용하면 된다.
예시 :
class MyPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return WillPopScope(
onWillPop: () async {
// true면 백버튼 활성화, false는 백버튼 비활성화
return false;
},
child: Scaffold(
appBar: AppBar(
title: Text('뒤로 가기 처리 예제'),
),
body: Center(
child: Text('뒤로 가기 버튼을 눌러보세요.'),
),
),
);
}
}
근데 willPopScope는 3.12부터 deprecate되서 대신 PopScope를 사용하면 된다.
예시 :
class MyPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return PopScope(
// true면 백버튼 활성화, false는 백버튼 비활성화
canPop: false,
onPopInvoked: (bool didPop) {
print("didpop ? $didPop");
},
child: Scaffold(
appBar: AppBar(
title: Text('뒤로 가기 처리 예제'),
),
body: Center(
child: Text('뒤로 가기 버튼을 눌러보세요.'),
),
),
);
}
}
I/flutter (21301): didpop ? false
반응형
'Hybrid > Flutter' 카테고리의 다른 글
Dart] 2. Collection (1) | 2024.06.14 |
---|---|
Dart] 1. 기초문법 (0) | 2024.06.13 |