상태관리 2

[Flutter] Stateful 위젯이 두 개의 클래스로 나눠진 이유

Flutter 앱을 구성하는 위젯은 Stateful 위젯과 Stateless 위젯으로 구분할 수 있다. 이렇게 구분하는 이유는 효율적인 상태 갱신을 위해서이다. 예를 들어 도움말 페이지는 사용자에 의해 화면이 바뀔 내용이 거의 없이 정적으로 화면을 보여주면 된다. 이런 경우 StatelessWidget 클래스를 상속받아서 위젯을 만든다. 하지만 마이페이지에서 이름을 변경하면 변경된 이름으로 화면이 갱신되어야 할 것이다. 이런 경우 StatefulWiddget을 상속받아서 만든다. 앱이 위젯의 상태를 감시하고 있다가 위젯이 특정 상태가 되면 알맞은 처리를 수행해야 한다. 상태가 연결된 동적인 위젯이 StatefulWidget이다. Stateful 위젯은 계속 상태를 지켜봐야하므로 그만큼 메모리나 CPU 등..

Flutter 2024.12.27

[Flutter] getX를 이용해 화면 갱신하기

마이페이지 화면에서 사용자 닉네임이 표시되고, 이를 변경가능하게 구현하려고 함.이름 옆에 edit Icon을 넣고 edit Icon을 누르면 텍스트로 표시되었던 사용자 이름이 TextField로 편집가능하게 구현하고 싶음대충 이런 느낌! 톱니바퀴 아이콘을 아직 안빼서 위젯들이 좀 겹쳤지만아래와 같이 코드 구현IconButton( onPressed: () { isEditing.value = true; print(isEditing);},edit Icon을 눌렀을 때 isEditing bool 변수 값이 바뀌게 함if (isEditing.value) SizedBox( width: 150, child: TextField( controller: usernameController, ..

Flutter 2024.11.12