데이터를 받으려면 어떻게 할 수 있을까
두가지 방법이 있다.
1. 넘어 온 값을 받아 setState()로 처리
onPressed: () async {
final value = await Navigator.push(
context, CupertinoPageRoute(builder: (context) => NewPage()));
setState(() {
debugPrint(' value ::::::::::: $value');
// 콜백 함수 처리
});
},
2. then 으로 콜백 함수 처리
Navigator.push(
context,
CupertinoPageRoute(builder: (context) => NewView()),
).then((value) {
if (value == 'update') {
debugPrint(' value ::::::::::: $value');
// 콜백 함수 처리
}
});
만약 데이터가 없다면 value는 null 이다.
데이터를 이전 화면에 넘기려면 어떤 방법이 있을까.
이것도 두가지 방법이 있다. 사실 한가지 방법인데, ㅎㅎ
pop, 즉 화면을 제거 할 때에는 인자로 전달하여 값을 전달한다.
아래 두 방법 모두 작동한다.
Navigator.pop(context, 'update');
Navigator.of(context).pop('update');
'develop > Flutter' 카테고리의 다른 글
[Flutter] VSCode flutter 프로젝트 생성하기 (0) | 2022.10.29 |
---|---|
[Flutter] dart class 선언하기 & 생성자 (0) | 2022.10.27 |
[Flutter] markdown Viewer 만들기 (0) | 2022.10.25 |
[Flutter] dart List선언하기 하기 (dart 기초 2-1) (0) | 2022.10.17 |
[Flutter] dart 출력 하기, 변수/상수 선언 하기 (dart 기초 1) (0) | 2022.10.13 |