Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 메이지유신
- 튜링기계
- 이미테이션게임
- column
- 부호화
- 고사성어
- overlay
- mixin
- jetpack compose
- 영화
- IntrinsicWidth
- 정규표현식
- navigator
- 조지레이코프
- 근대화
- DART
- 앨런튜링
- 사자성어
- swiftUI
- 역사
- Flutter
- GridView
- 제약
- NATO
- 경황
- constraint
- 상대성이론
- 육서
- 동아시아
- 한자
Archives
- Today
- Total
인문주의 사피엔스
Flutter에서 뒤로가기 버튼 이벤트 처리하기와 상태바의 글자색 변경하기 본문
반응형
WillPopScope
WillPopScope는 안드로이드 OS의 뒤로가기 버튼 이벤트를 처리하고 싶을 때 필요한 위젯 클래스로서 사용법은 다음과 같습니다.
WillPopScope(
child: Scaffold(),
onWillPop: () async {
await Future.delayed(const Duration(seconds: 1));
return true;
},
)
뒤로가기 버튼 이벤트가 발생하면 호출되는 콜백인 onWillPop에서 true를 반환하면 뒤로가기가 그대로 실행되고, false를 반환하면 뒤로가기가 취소됩니다.
onWillPop에서 async, await를 사용해서 다이얼로그를 통해 사용자의 선택을 받거나, 종료 메시지를 표시하거나, 뒤로가기의 실행을 지연하는 등의 중간 과정을 삽입할 수도 있습니다. 위의 코드는 버튼을 누르면 1초 후에 뒤로가기가 실행되는 예를 나타낸 것입니다.
AppBar.systemOverlayStyle
Scaffold를 사용할 때 AppBar를 포함하는 경우라면 상태바의 글자색을 흰색 또는 검은색으로 설정할 수 있습니다. 아래 코드는 상태바의 글자색을 검은색으로 설정하는 예제입니다. 글자색을 흰색으로 바꾸고 싶다면 SystemUiOverlayStyle.light를 사용하면 됩니다.
Scaffold(
appBar: AppBar(
systemOverlayStyle: SystemUiOverlayStyle.dark,
),
)
AnnotatedRegion<SystemUiOverlayStyle>
Scaffold를 사용하지만 AppBar를 포함하지 않는 경우라면 AnnotatedRegion을 사용해서 상태바의 글자색을 흰색 또는 검은색으로 설정할 수 있습니다. 아래 코드는 상태바의 글자색을 검은색으로 설정하는 예제입니다. 글자색을 흰색으로 바꾸고 싶다면 SystemUiOverlayStyle.light를 사용하면 됩니다.
AnnotatedRegion<SystemUiOverlayStyle>(
value: SystemUiOverlayStyle.dark,
child: Scaffold(),
)
다음은 테스트를 위한 예제 소스코드입니다.
반응형
'프로그래밍 > Flutter' 카테고리의 다른 글
Flutter/Dart에서 문자열을 쪼개는 방법 (0) | 2022.05.14 |
---|---|
Flutter에서 화면 전환하기 (0) | 2022.05.08 |
Flutter/Dart의 extends, implements, mixin 사용법 (0) | 2022.04.18 |
Flutter에서 일괄적으로 오류를 잡는 방법 (0) | 2022.04.16 |
Flutter에서 Overlay 클래스 사용하기 (0) | 2022.03.15 |
Comments