반응형
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
- 스프링부트
- 기술공부
- K8S
- 코테준비
- Axon framework
- 스프링 공부
- 카프카
- JPA
- 자바공부
- 플러터 개발
- querydsl
- JPA스터디
- 스프링부트공부
- JPA 공부
- nestjs공부
- 프로그래머스
- 알고리즘공부
- Kafka
- 스프링공부
- DDD
- 자료구조공부
- nestjs스터디
- JPA공부
- Flutter
- 기술면접공부
- 플러터 공부
- 코테공부
- 스프링
- JPA예제
- nestjs
Archives
- Today
- Total
DevBoi
[Flutter] Dialog 콜백 값 핸들링 본문
반응형
아래와 같이 플러팅 버튼을 누를때, 다이얼 로그 에 대한 노출을 한다.
floatingActionButton: FloatingActionButton(
onPressed: ((){
showDialog(
context: context,
builder: (BuildContext context){
return AlertDialog(
content: CreatePopup(),
);
})
이후에 값을 받아올때는 아래와 같이 구현한다.
showDialog(
context: context,
builder: (BuildContext context){
return AlertDialog(
content: CreatePopup(),
);
}).then((value) {
setState(() {
reportList = value;
this.getResult(reportList);
});
});
이러면 컨텍스트간의 값으로, 쉽게 얘기하면 다이얼로그값을 바탕으로 해당 부모 위젯에 대한 상태관리를 할 수 있다.
Dialog에서 버튼을 누르게 되면, 값이저장되고 팝업이 닫히게 된다.
이때 값을 부모 위젯으로 다시 보내는 것이고 예제는 아래와 같다.
MaterialButton(
color: Theme.of(context).colorScheme.secondary,
height: 30,
child: const Text(
"Save",
style: TextStyle(color: Colors.white),
),
onPressed: () {
_formKey.currentState!.saveAndValidate();
Report report = Report.fromMap(_formKey.currentState?.value);
dataInterface.save(report).then((value) => Navigator.pop(context,dataInterface.load()));
//print(dataInterface.load());
},
),
Navigator pop시점에 해당 값들을 다시 부모 위젯으로 넘겨주게되고
showDialog value에 해당 Navigator.pop(context,리턴 벨류스) 에서 리턴 벨류스에 값을 받을 수 있게 된다.
반응형
'[Mobile] > [Flutter]' 카테고리의 다른 글
[Flutter] Getx로 전역 Provider 설정 (0) | 2023.09.07 |
---|---|
[Flutter] FutureBuilder setState 동작 이슈 (0) | 2023.09.03 |
[Flutter] initState 이전 데이터 세팅 (0) | 2023.09.02 |
[Flutter] Chip 사용 (0) | 2023.08.28 |
[Flutter] 팝업 구현 (0) | 2023.08.26 |