티스토리 뷰
안드로이드부터 계속 context에 괴롭힘당하고 있음..ㅎㅎ
위젯이 각각 용도가 있는 방이라고 했을 때(주방, 화장실, 거실 등)
context는 방의 이름을 알려주는 역할을 한다. 그래서 보통
class sample extends StatefulWidget{
@override
Widget build(BuildContext context){
//여기서 위의 파라미터 context는 sample 클래스를 호출한 위젯을 나타낸다.
return Scaffold(
child: sampleData(context);
);
}
}
Widget sampleData(BuildContext context){
//여기서 context는 Scaffold를 나타냄.
return Container();
}
나는 Navigation에서 context의 벽에 부딪혀 여기까지 오게 되었다.
void main(){
runAPp(MaterialApp(
home: FirstRoute()
));
}
class FirstRoute extends StatelessWidget{
@override
Widget build(BuildContext context){
...
}
}
이 때 build가 가져오는 context는 FirstRoute를 호출하는 MaterialApp 이 된다.
반대로
void main(){
runApp(FirstRoute())
));
}
class FirstRoute extends StatelessWidget{
FirstRoute();
@override
Widget build(BuildContext context){
...
}
}
이런 구조가 되면 build의 context는 FirstRoute가 되고 이건 Widget이 아니므로 에러가 발생합니다...
아마 내가 이해한 내용은 그렇다^^@~
제가 틀렸다면 댓글을 달아주시어요*^^*
728x90
'#1 > Flutter' 카테고리의 다른 글
[flutter] TextField의 onChanged, onSubmitted + onEditingComplete (0) | 2021.09.09 |
---|---|
[flutter] GestureDetector, TextField 외부 클릭 시 키보드 숨기기 (3) | 2021.09.09 |
[flutter] GradleException 오류/에러 (0) | 2021.09.01 |
[flutter] Listview의 조건.. + (0) | 2021.09.01 |
[flutter] carousel slider와 pageview (0) | 2021.09.01 |
댓글