Flutter 화면 전환법

일단, 이 글에서는 제가 자주 쓰는 화면 전환법들만 다뤘음을 밝히며, 더 자세한 사항을 알아보고 싶으신 분들은 아래 공식 문서나 다른 문서들을 참고하시는 것이 더 좋을 것입니다.

아래는 기본적인 화면을 구성하는 코드입니다.
class MyApp extends StatelessWidget {
// This widget is the root of your application.
@override
Widget build(BuildContext context) {
return MaterialApp(
///
home: MyHomePage(title: '카트라이더 전적 검색 17%'),
);
}
}

class MyHomePage extends StatefulWidget {
MyHomePage({Key key, this.title}) : super(key: key);
final String title;

static void restartApp(BuildContext context) {
context.findAncestorStateOfType<_MyHomePageState>().restartApp();
}

@override
_MyHomePageState createState() => _MyHomePageState();
}
class _MyHomePageState extends State<MyHomePage> {
 ///
}
그리고 함수를 하나 만들어서 그 안에 다른 화면으로 이동하기 위해 아래와 같은 형식으로 코드를
입력해줍니다.
Navigator.push(
context,
MaterialPageRoute(builder: (context) => DetailApp(id: get.accessId, nickname: get.name, showAd: showAd, matchIds: matchIds,)),
);
DetailApp 화면을 MyApp 화면과 비슷한 구성으로 아래와 같이 만들어 줍니다.
class DetailApp extends StatefulWidget {
DetailApp({Key key}) : super(key: key);

@override
_MyChangeState createState() => new _MyChangeState();
}

class _MyChangeState extends State<DetailApp> {
 ///
}
그리고 현재 화면을 없애주는 아래와 같은 형식으로 코드를 입력해줍니다.
onPressed: () => Navigator.pop(context),
push는 기존 화면의 위에 새로운 화면을 띄워주고, pop은 띄웠던 화면을 없애주는 메서드입니다.
그리고 replace라는 함수도 있는데, 말 그대로 기존 화면을 새 화면으로 대체해주는 메서드입니다.
이 세 가지 메서드가 화면 전환에 가장 많이 쓰이게 되는 메서드입니다.
replace 메서드는 아래와 같은 형식으로 작성합니다.

Navigator.pushReplacement(context, MaterialPageRoute(builder: (context) => MyHomePage(title: '카트라이더 전적 검색 17%')));
감사합니다.

댓글

이 블로그의 인기 게시물

개인정보처리방침

앱 출시는 어떤 과정으로 진행되는 것일까? (Android, iOS)

React Native 화면 전환법